【失败的尝试】C++中使用string进行switch判断
时间:2011-03-28 来源:蔡諝
贴出错误代码:
#include <iostream>
#include <string>
using namespace std;
void main()
{
string str;
cin>>str;
switch(str)
{
case "ab":
cout<<"one"<<endl;
break;
case "cd":
cout<<"two"<<endl;
break;
default:
cout<<"error"<<endl;
}
}
体会:
1.c++中不能直接使用string类型,但是添加一行代码#include <string>即可使用,注意这里不是添加string.h。需不需要添加.h是看这个头文件是系统的还是自己写的,毕竟你是用using namespace std告诉系统你使用的是标准库,如果添加了.h,那么系统会认为这个头文件是你自己写的。
2.cin可以用来作为字符串的输入接口,而不需要用scanf。
3.switch的参数只可以是byte、int及其延伸、char,不可以是string、folat、数组、指针等。switch是用"="进行比较,而string没有"="的概念,只有strcmp;float没有"=",这涉及到数在计算机内部的具体表示。
相关阅读 更多 +