求大神指點
關于緩沖區的問題。緩沖區是不是分為輸入和輸出緩存,你在屏幕上輸入時就是將數據以字符寫入了緩沖區,當你按下回車就是將數據以指定格式讀取到內存,而輸出就是將數據從內存讀取,在寫入到輸出緩沖區,屏幕上你打的字符和輸出的字符被緩沖區讀取到了哪里?既然它顯示了就應該占據空間,而緩沖區又太小,屏幕上那么多的字符在哪里存著呢?
第二個問題:while (getchar() != ‘\n’)
????????????????????????continue;
????putchar();
具有丟棄除了字符的功能,是不是getchar()每從緩沖區讀取一次字符,就會將該字符清除,還是會將光標移到下一個字符開始讀???
當getchar() == ‘\n’時已經不滿足循環條件了,那'\n’是被使用了還是被清除了?
求大神解惑,關于緩沖區的疑問...做輸入驗證時發現‘'\n’真是一個麻煩的字符。
2022-11-10
https://www.cnblogs.com/ghbuff/articles/15915563.html? https://www.bilibili.com/read/cv17290379? 緩沖區問題 鍵盤錄入以換行符號'\n' 結尾? 回車后 緩沖區一定有一個'\n'? 此時用scanf("%*[^\n]");吸收掉除換行符以外的東西? scanf("%*c") 再吸收一個字符('\n')此時緩沖區就空了
2017-03-11
while小括號后面的getchar不能這么寫,書寫有誤
2017-02-06
我覺得你得問題有點長,所以很少有人回答。。。。。。。。