你可以用这种方式读取一个单独的以空格结束的词:
1
2
3
4
5
6
7
8
9
|
#include<iostream>
#include<string>
using namespace std;
int main(){
cout << "Please enter a word:\n" ;
string s;
cin>>s;
cout << "You entered " << s << '\n' ;
}
|
注意,这里没有显式的内存管理,也没有可能导致溢出的固定大小的缓冲区。
如果你确实想得到一行而不是一个单独的词,可以这样做:
1
2
3
4
5
6
7
8
9
|
#include<iostream>
#include<string>
using namespace std;
int main(){
cout << "Please enter a line:\n" ;
string s;
getline(cin,s);
cout << "You entered " << s << '\n' ;
}
|