這幾個輸入函數經常搞不清具體特點和用法,這裡稍作總結
一、cin>>
1、最基本用法,輸入一個變量值
2、輸入字符串,遇“空格”、“TAB”、“回車”結束,比如輸入“hello world”,輸出“hello”
二、cin.get()
1.用來接收字符,比如
char c;
c=cin.get();//或者cin.get(c);
cout<<c;
輸入 hello,輸出h;
2.cin.get(字符數組名,接收字符數目)用來接收一行字符串,可以接收空格,例如
char a[12];
cin.get(a,12);
cout<<a<<endl;
輸入hello world;輸出hello world;
輸入hello world!!!;輸出hello world(因為包含終結符號)
三、cin.getline()
1.cin.getline(字符數組名,接收字符數目),和cin.get()第二個用法類似,但是看編譯器cin.getline()是有三個參數,默認是'\n',如果將以上例子寫成cin.getline(a,12,'l'),將輸出he
2.用於二維數組
char a[2][20];
for(int i=0;i<2;i++)
{
cin.getline(m[i],20);
}
for(int j=0;j<3;j++)
cout<<"m[j]<<endl;
四、getline(),接收字符串,可以包含空格,但是必須#include<string>
string str;
getline(cin,str);
cout<<str<<endl;
五、gets(),接收字符串,可以包含空格,但是必須#include<string>
char a[12];
gets(a);
六、getchar(),接收一個字符,必須#include<string>
char ch;
ch=getchar(); //不能寫成getchar(ch);