Как вы можете видеть из приведенного ниже фрагмента кода, я объявил одну переменную char
и одну переменную int
. Когда код компилируется, он должен идентифицировать типы данных переменных str
и i
.
Почему мне нужно снова указать во время сканирования моей переменной, что это строка или целочисленная переменная, указав %s
или %d
на scanf
? Разве компилятор не достаточно зрелый, чтобы определить, когда я объявлял свои переменные?
#include <stdio.h>
int main ()
{
char str [80];
int i;
printf ("Enter your family name: ");
scanf ("%s",str);
printf ("Enter your age: ");
scanf ("%d",&i);
return 0;
}