大家这个点都还没睡吧| getchar的返回值为啥用int类型变量接收

先看一段代码

#include
int main()
{
	int ch = getchar();
	return 0;
}

起初看到,感觉是非常奇怪,但查了一下发现其返回值就是int类型,整型的话一般字符的ascll码用char类型其实也是能存下的,但是那只是在读取成功的情况下

在下面图中可以看到,如果读取失败的话返回值则为EOF,而EOF为-1,用char类型就会存不下

-1的补码,故用int类型的变量来接收getchar的内容

大家这个点都还没睡吧| getchar的返回值为啥用int类型变量接收_第1张图片

 对编程感兴趣的我却没有get到想要的专业

专业不对也要努力,冲鸭

大家这个点都还没睡吧| getchar的返回值为啥用int类型变量接收_第2张图片

 

你可能感兴趣的:(C语言,c语言,c++)