Q
驗證輸入整數
1
A
回答
2
如果第一個字符是不是一個數字,然後%d
將無法匹配,並且a
不會分配。 scanf
的返回值告訴你分配了多少項目。如果是一個,那麼顯然它至少是部分有效的數字。如果它爲零,這意味着它不能被解析爲數字,並且您可能想要發出錯誤信號。
+0
謝謝!終於明白這一點。 – amulous
2
scanf
返回代碼會告訴你你的參數列表中有多少項被填充。這可能還不是你想要的:我認爲你會發現輸入「123four」仍然會返回1,其中a = 123。
0
您可以使用一個do while循環從用戶 比如驗證輸入:
int read,a;
do {
read = scanf("%c", &a);
}while(read != EOF && a != '\n'); //change validation here according to condition
相關問題
- 1. 驗證輸入整數
- 2. Java整數輸入驗證
- 3. Scala Swing:驗證TextBox的整數輸入
- 4. DataGridView中的整數輸入驗證
- 5. 輸入驗證 - 僅限整數?
- 6. 整數輸入驗證asp.net mvc4
- 7. Ç - 整數輸入驗證碼
- 8. JAVA-驗證輸入是整數
- 9. 驗證用戶的整數輸入?
- 10. 整數輸入驗證Python的
- 11. Symfony2 HTML5整數輸入和驗證器
- 12. 整數驗證輸出
- 13. 輸入,阻止整個表單驗證
- 14. 數字輸入的輸入驗證
- 15. 驗證輸入
- 16. 驗證輸入
- 17. 輸入驗證
- 18. 驗證輸入
- 19. 驗證輸入數據
- 20. 驗證數據輸入
- 21. Laravel驗證輸入數組
- 22. javascript函數輸入驗證
- 23. 數字輸入驗證
- 24. 驗證倍數輸入
- 25. 驗證整數
- 26. 驗證整數
- 27. 驗證整數
- 28. 驗證整數
- 29. 驗證輸入的數字是整數還是「一半」
- 30. jquery驗證八個整數和兩位小數的輸入
通過讀取scanf函數的文檔,並利用返回值。簡單! – enhzflep
謝謝!返回值完成了這項工作。 – amulous