Вот мой код! (Извините за мой плохой английский)
#include<stdio.h>
int convert(char ch);
int main(void)
{
char ch=0;
while(ch != 'q')
{
ch=getchar();
ch=convert(ch);
if(ch == -1)
printf("wrong input");
else
putchar(ch);
putchar('\n');
}
return 0;
}
int convert(char ch)
{
if(ch>='A' && ch<='Z')
ch+=32;
else if(ch>='a' && ch<='z')
ch-=32;
else
return -1;
}
И этот код предназначен для замены A на a, z на Z
преобразовать маленькое в заглавную букву или наоборот.
но когда я закончил, я обнаружил что-то странное, потому что всякий раз, когда ставил в программу символ,
он всегда возвращает ожидаемый результат и другой "неправильный ввод".
и я ничего не добавил к своему стандартному вводу, кроме символа и Enter.
Итак, вот мой вопрос.
Функция getchar () или что-то подобное, например, fgetc, fgets получает 'enter' в качестве символа?