【C语言初阶】--- getchar函数和putchar函数

getchar函数

原型: int getchar( void )
这里返回值的意思是,返回输入字符的ASCII码值
如果读取失败,则会返回EOF,EOF实质是-1,所以这里返回的是int型的整型(包含正负号)

putchar函数

功能类似于printf函数,不同的地方在于putchar函数打印的是传进来的字符

char ch = 'a';
putchar(ch);  //传进来什么字符就打印在屏幕上什么

getchar函数和putchar函数的实际应用

这里不得不讲到一些编译器的原理:
scanf函数和getchar函数功能相似,都有读取输入的功能,那么当我们在键盘上输入时,他们会立刻拿到这些信息吗?不能,因为存在输入缓存区。当我们输入信息时,这些信息先暂时保留在缓存区中,然后这两个函数才会从缓存区中拿取数据。

实例一:

当scanf函数读取数据时遇到空格就会停止读取,后面的数据就会停留在缓存区中,会影响到接下来的读取

//这段代码可以让缓存区中剩余的数据全部清空
while((int ch = getchar())!=EOF)
{
	//这里可以添加putchar函数,目的是将缓存区中的数据打印出来
	//putchar(ch);
}
实例二:

scanf函数正常读取缓存区中的数据后,换行符\n会留在缓存区,这里的换行符是你在输入数据后按得回车键表示输入结束,这个时候只需getchar();就可以解决清理这个\n。因为getchar();就是向缓存区中读取一个字符返回这个字符的ASCII码值,那我们不返回ASCII码值,只让它读取一个字符就行。

  • 21
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值