scanf和gets的差别
生活随笔
收集整理的這篇文章主要介紹了
scanf和gets的差别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
scanf("%s", str1);
?scanf() 讀取到空格時就認為字符串輸入結束了,不會繼續讀取了。
第一個 scanf() 讀取到 "Java" 后遇到空格,結束讀取,將"Python C-Sharp" 留在緩沖區。第二個 scanf() 直接從緩沖區中讀取,不會等待用戶輸入,讀取到 "Python" 后遇到空格,結束讀取,將 "C-Sharp" 留在緩沖區。第三個 scanf() 讀取緩沖區中剩下的內容。
?
gets 是 get string 的縮寫,意思是獲取用戶從鍵盤輸入的字符串,語法格式為:
gets(arrayName);當輸入的字符串中含有空格時,輸出仍為全部字符串,這說明 gets() 函數不會把空格作為輸入結束的標志,而只把回車換行作為輸入結束的標志,這與 scanf() 函數是不同的。
總結:如果希望讀取的字符串中不包含空格,那么使用 scanf() 函數;如果希望獲取整行字符串,那么使用 gets() 函數,它能避免空格的截斷。
轉載于:https://www.cnblogs.com/CATHY-MU/p/5911275.html
總結
以上是生活随笔為你收集整理的scanf和gets的差别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows 8.1下安装Mac OS
- 下一篇: Gym 101102C---Bored