以下是我整理的近期学习过程中遇到的一个小知识点
putchar()以及getchar()
1.相较于scanf与printf,putchar对应scanf意为输入,getchar对应printf意为输出。
不过scanf读到空格就会停止所以无法读取含有空格的字符串,而getchar每次只读取一个字符,因此可以用while循环配合着getchar来消除缓冲区所带来的影响。
2.putchar输出传入的数据,它的返回值为int类型,返回的是传入字符的ASCII值
例如:putchar(120);会打印出来字符x
putchar()的()内字符不带单引号,因为putchar是以一个变量作为参数的运算,如若带上了单引号则表示为以一个字符型常量为参数,与使用场景不符合。
3.char ch='a';putchar(ch)等价于printf("%c",ch);
4.输入a然后按下回车键,putchar输出了a\n
原理:输入的a以及按下的回车键会先进入到缓冲区里,后用getchar先读取a然后由putchar输出a之后再读取回车,所以输出的a会出现换行。