1、cin>>
用法1:
最基本,最常用的輸入方式。
在輸入過程中會過濾掉不可見字符,如空格、回車、TAB等。同時在遇到
如果不想略過空白字符,需要使用noskipws流控制
用法2:
接受一個字符串,遇到空格、TAB、回車都結束
2、cin.get()
用法1:
cin.get(字符串變量名),可用來接受字符
cin.get(ch)或者ch = cin.get()
用法2:
cin.get(字符數組名,接收字符數目),可用來接受一行字符串,可以接收空格
用法3:
cin.get(無參數),沒有參數主要是用來舍棄輸入流中的不需要的字符,或者舍棄回車,用來彌補cin.get(字符數組名,接收字符數目)的不足
3、cin.getline()
用法:
接收一個字符串,可以接收空格並輸出
參數形式:cin.getline(接受字符串名稱,接受個數,結束字符),當第三個參數省略時,系統默認為'\0'
4、getline()
用法:
接受一個字符串,可以接受空格並輸出,需要包含頭文件“#include<string>”
參數形式:getline(cin,字符串名稱)
5、gets()
用法:
gets()函數用於重緩沖區中讀取字符串,原型為 char *gets(char *string)
gets()函數從流中讀取字符串,直到出現換行符或讀到文件尾為止,最后加上NULL作為字符串結束,所讀取的字符串暫存在給定的參數String中
返回值:若成功則返回string的指針,否則返回NULL
注意:由於gets()不檢查字符串string的大小,必須遇見換行符或者是文件結尾才會結束輸入,因此容易造成緩存溢出的安全問題,導致程序崩潰,可以使用fgets()代替