cin:
當碰到空格或換行符'\n'時,輸入結束:
char a[10],b[10];
cout<<"Enter some input:\n";
cin>>a>>b;
cout<<a<<b<<"End\n";
輸出結果為:
Enter some input:
12 34 56
1234END
cin.getline:
當碰到換行符'\n'或達到所能接受的最大字符數時,輸入結束:
char a[10];
cout<<"Enter some input:\n";
cin.getline(a,5);
cout<<a<<b<<"End\n";
輸出結果為:
Enter some input:
123456
1234END
需要注意的是,a讀入了4個字符,不是5個,是因為'\0'占了一位
cin.get:
可以讀入任何字符,包括空格和'\n':
cout<<"Enter some input:\n";
char a,b,c;
cin.get(a);cin.get(b);cin.get(c);
cout<<a<<b<<c<<"End\n";
輸出結果為:
Enter some input:
AB
CD
那么a的值為'A',b的值為'B',c的值為'\n\
注意:
在使用get時,必須考慮空格和換行符的處理:
int n;char c;
cout<<"Enter a number:\n";
cin>>n;
cout<<"Now enter a letter:\n";
cin.get(c);
輸出結果為:
Enter a number:
10
Now enter a letter
n的值順利讀入10,但c的值為'\n',因為讀入數字10后,輸入流中下一個被讀取的字符是'\n'
