程序设计中遇到,需要输入一串string字符串,需要回车后输出结果(或者说进行下一步操作),如何判断结束?
关键在于,string串没有'\0'作为字符串结束标志
解决方案:适用string库的成员函数完成相应功能,如求string串长度,有:
string a;
cin >> a;
cout << a.length();
这也从一定程度上体现了string与char的不同,但是目前在我的实际应用中,还是适用char会方便点。
补:string和char在输入时也有不同,string和cin结合得更好,而char与gets()搭配
int main()
{
string str1;
char str2[20];
int l1,l2;
getline(cin,str1);//输入
l1=str1.length();//计算字符串长度
gets(str2);//输入
l2=strlen(str2);//计算字符串长度
cout<<"str1: "<<str1<<"\t\tlength str1: "<<l1<<endl
<<"str2: "<<str2<<"\t\tlength str2: "<<l2<<endl;
system("pause");
return 0;
}