常见的getchar 与EOF的问题
生活随笔
收集整理的這篇文章主要介紹了
常见的getchar 与EOF的问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
代碼中常有類似的如下的輸入循環
char ?c;
while((c=getchar())!=EOF)....
如果輸入 字符+換行時,循環的代碼會執行兩次,主要是換行鍵作為字符存到了緩存隊列中,第一次c為輸入的值,第二次c為換行符 ,可以通過fflush(stdin);清除
EOF在linux下為ctrl+D window下為ctrl+z
這種循環寫法雖然比較標準,但是感覺有點笨重
一般情況下可以改寫如下:
char c;
while((c=getchar())!='\n').....
?
順便說下C語言中單引號和雙引號的區別,單引號主要表示字符,雙引號主要表示字符串
‘\n'表示一個字符,也就是換行,”\n“,包括 '\n' 和'\0' ?,'\0' 為字符串的結束符,一般系統自動添加
轉載于:https://www.cnblogs.com/sunyb/p/5099110.html
總結
以上是生活随笔為你收集整理的常见的getchar 与EOF的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2013 ACM区域赛长沙 K Pock
- 下一篇: 北京护照办理流程