C 中字串輸入

2021-06-22 09:24:11 字數 787 閱讀 7816

1 使用cin輸入字串的相關問題

1.1 cin 使用空白(空格、製表符和換行符)來定字串的界

這意味著cin在獲取字元陣列輸入時只讀取乙個單詞,在讀取該單詞後,cin將該字串放到陣列中,並自動在結尾新增空字元。這樣,後乙個字串將不會輸入到陣列中。

1.2 當輸入字串可能比目標陣列長時,將不能防止例如將包含30個字元的字串放到20個字元的陣列中的情況。

2 面向行的讀取還不是面向單詞

2.1 getline() 

getline()讀取一行的輸入,直到到達換行符,並丟棄換行符

它有三個引數:陣列名稱、要讀取的字元長度、第三個引數為***

如果為20,則函式最多讀取19個字元,餘下的空間用於儲存空字元!!!注意!!!!

2.2 get()

get()有三個引數的版與getline()意思差不多,...,將換行符保留在輸入序列中,不通過一定的手法,get()將不能通過最後的換行符!!!!如此這樣使用:

cin.get(name,size);

cin.get();

cin.get(name2,size2);

2.3 空行和其他問題

當getline()和get()讀取空行時怎麼辦?思考。。。

2.4 對於乙個未被初始化的字串,其內容是隨機的,也就有可能出現空字元\0!!!!要先初始化!!!

2.5向string中輸入一行字元

getline(cin,string);//向string中輸入一行

cin.getline(array,size);//向普通陣列中輸入一行

在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也可以 讀到空格...

C 字串輸入

1.使用cin輸入 char a 20 cin a 遇到空字元就停止輸入,即只能輸入單個單詞。2.使用getline輸入 char a 20 cin.getline a,20 該函式有兩個引數,第乙個是陣列的名稱,第二個是要讀取的字元數。遇到換行符或者讀取完指定數目的字元停止讀取。在儲存字串時,用空...