string的存储以什么结尾?
来源:百度知道 编辑:UC知道 时间:2024/05/24 18:32:50
请高手指教一下:以下程序运行时,输入字符串,按下回车没有反应,
int main()
{
vector<string> coll;
copy (istream_iterator<string>(cin),
istream_iterator<string>(),
back_inserter(coll));
sort (coll.begin(), coll.end());
unique_copy (coll.begin(), coll.end(),
ostream_iterator<string> (cout,"\n"));
return 0;
}
是不是应该在输入字符串的末尾假如string的结束符?string的结束符又是什么呢?
int main()
{
vector<string> coll;
copy (istream_iterator<string>(cin),
istream_iterator<string>(),
back_inserter(coll));
sort (coll.begin(), coll.end());
unique_copy (coll.begin(), coll.end(),
ostream_iterator<string> (cout,"\n"));
return 0;
}
是不是应该在输入字符串的末尾假如string的结束符?string的结束符又是什么呢?
我们无法输入string的结尾符
结尾符号,按道理来说应该是NULL,即为 \0
EOF表示流的结束。即为1楼所说
string的存储方式:
http://blog.csdn.net/darennet/article/details/40271393
string的结尾应该是NULL,即为 \0
istream_iterator的结束符是eof, 输入的话 按 ctrl-z 然后回车就可以