本篇文章主要介绍一下相关问题
1️⃣分别介绍和
2️⃣和的区别
3️⃣如何结束
4️⃣和的区别
1️⃣分别介绍和
int getchar(void)
使用键盘输入字符,字符输入缓冲区,然后getchar()函数获得的字符是从输入缓冲区中提取的且每次,只有点击回车Enter,计算机刷新缓冲区,将这个缓冲区的内容打印出来。
示例:
2️⃣和的区别
从下面的两段代码可以看出虽然就只是差了一个括号,但是输出的差距还是很大的,
这里的原因是因为的优先级要高于,所以导致两段代码输出的差距。
这里还有一点是键盘输入字符要进入缓冲区,只有按下Enter才能进行输出,也是进入了缓冲区,所以回一并打印出来。


3️⃣如何结束
输入EOF的方式是Ctrl+Z(在Linux系统下,利用快捷键Ctrl+D;在windows下用Ctrl+Z,然后在按下Enter就可以输入文件结束标志EOF了。 )可以理解成=Ctrl+Z。
4️⃣和的区别
也就是下面这段代码中这两种情况,虽然两种情况绝大部分是没什么区别的,
我个人理解是因为当作,把负数放在字符类型是不正确的。
在书中《C和指针》中是这样写的,需要的位数比字符型值所能提供的位数要多,这也是返回一个整形值而不是字符型的原因。然而,把的返回值首先储存到中将导致它截断。然后这个被截断的字符提升为整型并与进行比较。当这段存在错误的伪代码在使用在有符号字符集的机器运行时,如果读取了一个的字节,循环将会终止,因为这个值截断在提升之后与相等。当这段代码在使用无符号字符集的机器上运行时,这个循环将永远不会终止!
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/703.html