#include<stdio.h>
#include<conio.h>
void main()
{
char c;
int i;
clrscr();
scanf("%c",&c);
scanf("%c",&c);
printf("%c",c);
getch();
}
Эта программа не принимает значение char c во второй раз, однако отлично работает в случае целочисленной переменной. Почему так?Невозможно изменить значение переменной char
Да, это так. Вы просто не замечаете *, которое имеет значение char. :) – CiaPan
Дескриптор поля '% c' отличается от' scanf() ', чем большинство других, поскольку он не пропускает начальные пробелы. Это точно так, что он может сканировать * любой символ *, включая пробельные символы. Из всех стандартных спецификаторов 'scanf()' для преобразования есть только 'c',' ['и' n' (и 'n' - частный случай). –