c++中在循环输入语句中怎么以输入0结束循环的语句并且不换行


有時候我們在使用cin時 可能會遇箌想要輸入的字串中,包含空白、換行、tab

但是這會造成讀取資料與顯示時會有不完全存取。

cin 不會將換行字元 空白 tab鍵 讀入 這些空白都是拿來作為字串結束

接下來讓我們看看下列範例:


所以假設今天創了一個陣列 要讀入一行有空白間隔的字

那"C++"這串字會在哪?

會把之前存放在buffer的徝放到charry2 所以才會出現這個結果

那麼要如何改善 空白的問題


而這裡個func的差別在哪? 兩者都會讀入空白,不過:

get() => 則會將換行字元視為輸入資料

因為get() 會將換行字元讀入 所以在ENTER按下後 前面的字串會放置程式的變數中

可是換行字元卻會被留在buffer中 等待下一次輸入時 讀入因此就會被下一個cin.get吃進去

再來還有另一種方式表示:

 這代表會回傳cin物件 然後以此物件再用作get函數的引數傳入


有時候我們在使用cin時 可能會遇箌想要輸入的字串中,包含空白、換行、tab

但是這會造成讀取資料與顯示時會有不完全存取。

cin 不會將換行字元 空白 tab鍵 讀入 這些空白都是拿來作為字串結束

接下來讓我們看看下列範例:


所以假設今天創了一個陣列 要讀入一行有空白間隔的字

那"C++"這串字會在哪?

會把之前存放在buffer的徝放到charry2 所以才會出現這個結果

那麼要如何改善 空白的問題


而這裡個func的差別在哪? 兩者都會讀入空白,不過:

get() => 則會將換行字元視為輸入資料

因為get() 會將換行字元讀入 所以在ENTER按下後 前面的字串會放置程式的變數中

可是換行字元卻會被留在buffer中 等待下一次輸入時 讀入因此就會被下一個cin.get吃進去

再來還有另一種方式表示:

 這代表會回傳cin物件 然後以此物件再用作get函數的引數傳入

我要回帖

更多关于 结束循环的语句 的文章

 

随机推荐