關於C 中字串輸入get與getline的區別

2021-09-25 08:00:07 字數 646 閱讀 8473

最近使用c++中自己老是忘記的乙個點,get與getline的區別。

get和getline所屬iostream類,作用是讀取一整行,通過換行符確定讀取結束,他們都可以讀取空格。

getline會在讀取結束後捨棄換行符,而get回將換行符保留到輸入序列中。

1

char arr[100

];2 cout<<"

輸入一段文字:

"<3 cin.getline(arr,20); //

使用getline

4 cin.get(arr,20); //

使用get

5

get與getline有兩個引數,第乙個引數是用來儲存的陣列名稱,第二個引數代表著讀取的位元組數。

在cin.get(arr,20)使用完後插入「cin.get()」,cin.get()不接受任何引數,為get()的乙個變體,意義為讀取下乙個字元(即使是換行符),用此**來處理被捨棄的換行符。

即:cin.get(arr,20);

cin.get();

cin.get(arr,20);

或者可以將兩段**合為一段:

cin.get(arr,20).get();

以上。

C 中字串輸入

1 使用cin輸入字串的相關問題 1.1 cin 使用空白 空格 製表符和換行符 來定字串的界 這意味著cin在獲取字元陣列輸入時只讀取乙個單詞,在讀取該單詞後,cin將該字串放到陣列中,並自動在結尾新增空字元。這樣,後乙個字串將不會輸入到陣列中。1.2 當輸入字串可能比目標陣列長時,將不能防止例如...

在C 中輸入字串

在c 中輸入字串的五種方法 1 cin 1 cin.get 2 cin.getline 3 getline 4 gets 5 getchar 具體用法 1 cin include using namespace std main cout cout 輸出m 的值 請輸入第1個字串 kskr1 請輸入...

c 字串輸入

知道好多人初學者會像我一樣看不懂那些長篇的輸入介紹 也不想看 這裡有直接的 寫法!以前只會用gets 結果它被c 11標準給刪了,洛谷裡用不了。因為用得少記不住,每次都得去查一遍,這裡就直接列幾個我已知的字串的輸入方法,注意事項寫在注釋,初學應該是足夠用了,後續會不斷補充。當然cin也可以 讀到空格...