首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

gets和getchar一起用的有关问题

2014-01-12 
gets和getchar一起用的问题首先是这个,主要目的是输出a和c,b是吸收输完a后的回车结果和想的一样,回车被吸

gets和getchar一起用的问题
首先是这个,主要目的是输出a和c,b是吸收输完a后的回车
gets和getchar一起用的有关问题
结果和想的一样,回车被吸收了,a和c都能准确捕获字符
gets和getchar一起用的有关问题
接着改成这样
gets和getchar一起用的有关问题
可是第二个getchar不能捕获到字符gets和getchar一起用的有关问题
然后这样,先输字符串,先回车两次,再输入字符,这样才能捕获到,如下
gets和getchar一起用的有关问题

这是怎么回事?用scanf("%c")也是这种情况
[解决办法]
scanf("%c")前面加个空格看看
scanf(" %c")
[解决办法]
1. gets()本身会吸收回车, 所以不需要再跟一个吸收回车的
2. gets()一直就是c语言里臭名昭著各类编程规范严禁使用的函数, 而且在最新的c11标准中已经删除了gets(), 所以不要再使用了.
[解决办法]
get语句把字符串后面的回车键吞掉了,所以c字符是给了b,c变量是\n。可以说,gets()会舍弃最后的回车符!

热点排行