AI摘要:本文讨论了scanf与gets函数混用的问题。当gets在scanf前调用时,输入正常;而当scanf在gets前调用时,输入会受到影响。原因在于gets接收了scanf输入后的回车符。解决方法是在两者之间使用getchar函数接收回车符。参考资料:http://blog.csdn.net/wayne_hust/article/details/8164530
Powered by AISummary and MoonShot KimiChat.
1、gets在scanf前调用,这种调用一般不会出现什么问题,可以正常输入。
2、scanf在gets前调用,这种情况就会出现问题,当输入完scanf中的变量时,运行到gets函数,则不让输入任何字符
出现此问题的原因是gets函数接收了scanf输入完后的回车符,解决的办法是在scanf和gets中间,用getchar函数接收掉回车符,这样就不会出现任何问题了。
参考资料:
http://blog.csdn.net/wayne_hust/article/details/8164530
只有一条评论 QAQ
scanf("%dn")让scanf自己把换行符读走