rosynirvana 发表于 2014-3-2 12:20
因为你输入的是: c 回车
第一次读取的是c,第二次读取的是回车
rosynirvana 发表于 2014-3-2 12:20
因为你输入的是: c 回车
第一次读取的是c,第二次读取的是回车
哎呀呀 发表于 2014-3-2 12:37
我用了fflush(stdin)就好了,谢谢您.
哎呀呀 发表于 2014-3-2 12:37
我用了fflush(stdin)就好了,谢谢您.
哎呀呀 发表于 2014-3-2 12:28
是getchar函数的原因吗?
是不是scanf函数也存在这种情况呢?
我把把刚才那个getchar换成了scanf也存在了 ...
哎呀呀 发表于 2014-3-2 12:28
是getchar函数的原因吗?
是不是scanf函数也存在这种情况呢?
我把把刚才那个getchar换成了scanf也存在了 ...
哎呀呀 发表于 2014-3-2 12:30
用getchar函数不可以吗?为什么改成这种结果?不懂哟
rosynirvana 发表于 2014-3-2 17:03
最后再说一下缓冲区这个名词
用C标准库函数读取键盘输入(getch之类不是标准库函数),是先把输入的内 ...
4399APPLE 发表于 2014-3-2 13:09
有个地方要你注意:
fflush(stdin);是不正规的作法,并不能“正规的”清除缓冲区
建议这样:
欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) | Powered by Discuz! X3.2 |