scanf的回車干擾問題
問題描述:
學習資料結構,寫程式碼的時候,突然遇到了一個問題,連續的輸入不受我控制了,沒錯是這樣的,scanf()函式我不會用了!
經過除錯我發現了在我輸入時,多出一個回車給我的變數附了值,沒錯,我就是碰到了典型的scanf函式輸入緩衝區的問題。
程式如下:
int a,b,c;
printf("輸入a和b");
scanf("%d%d",&a,&b);
printf("輸入c");
scanf("%d",&c);
當我輸入: 1 2 回車 之後,程式直接列印了 "輸入c" 後,結束了!!!???我還沒輸入c呢。
查詢賦值情況:a = 1 ; b = 2; c = \n(回車)
也就是上一次輸入的回車符號\n,儲存在了緩衝區 ,下一步直接賦值給c了。
我的解決辦法:吸收回車
-
在scanf("%d",&c)前邊加一個getchar()
-
將scanf("%d",&c)改成scanf(" %d",&c),在%d前邊加一個空格
-
將scanf("%d",&c)改成scanf("\n%d",&c),在%d前邊加一個\n
提示:查詢解決辦法有一種使用fflush(stdin)清除快取區的辦法,我這裡並不適用!
相關文章
- 雙埠SRAM中讀干擾問題
- 排除在 Laravel-admin 使用 Vue 時,Pjax 干擾的問題LaravelVue
- 解決無線干擾引起的 Wi-Fi 和藍芽問題?藍芽
- 檢視干擾程式
- 解決由無線干擾引起的 Wi-Fi 和藍芽問題藍芽
- 對付Reset流氓干擾:TCP keepaliveTCP
- 雙絞線為什麼能抵消干擾
- [20210802]cygwin文字回車換行問題.txt
- 解決vscode c語言中scanf函式的輸入問題VSCodeC語言函式
- GGTC:2023年全球菸草行業干擾指數報告行業
- 細數這些年被困擾過的 TS 問題
- 關於CSDN廣告打擾閱讀的問題
- Spring的事物回滾問題Spring
- 網格人為干擾度計算方法的matlab程式碼實現Matlab
- VS2019中scanf返回值被忽略的問題及其解決方法
- 【定位不準的煩心事系列】第1篇:談談衛星定位的位置干擾
- 關於操作駁回遇到的問題
- 關於 PayPal 支付回撥的問題
- Safari擴充套件 社交媒體干擾項隱藏:SocialFocus Hide Distractions for mac套件IDEMac
- 如何提高LoRa抗干擾能力來提升通訊質量的幾種技術分享
- 困擾軟體行業發展的真正問題是什麼?行業
- 影響WiFi速度的不僅是裝置老舊 或許是存在訊號干擾!WiFi
- scanf與EOF
- 事件驅動架構EDA能清除機器學習中標籤干擾噪音事件架構機器學習
- YouGov:6/10的美國女性可輕鬆面對性騷擾問題Go
- 困擾Chrome使用者多年的大問題,終於要解決了!Chrome
- win10玩殺戮空間2總是輸入法干擾如何解決Win10
- iPhone12及MagSafe 配件會對心臟起搏器等裝置造成干擾iPhone
- MySQL 8.0能徹底解決困擾運維的複製延遲問題!MySql運維
- [20180419]關於閃回的一些問題.txt
- go-zero之支付回撥問題Go
- 支付寶支付回撥觸發問題
- 關於while(cin)回車結束 和 while(cin)與cin.get()結合時發現的問題While
- 回車與換行的故事
- 低功耗/抗干擾/高ESD防護能力LCD顯示液晶驅動:VK2C22A
- 演算法學習回顧-皇后問題演算法
- 想轉行遇到刷題困擾
- 車路協同若干痛點問題的思考