我想编写一个程序,从用户那里获取大约4个字符串,然后要求用户键入一个字符串,以查看该字符串是否存在于已输入的4个字符串之一中。请您纠正我的错误。谢谢。(我用dev c ++)
#include<iostream>
#include<conio.h>
#include<stdlib.h>
using namespace std;
int main()
{
int x,y,i;
string z[40],a;
for (int i=0;i<4;i++)
{
cout<<"type 4 strings";
cin>>z[i];
}
cout<<"type a string to search ";
cin>>a;
for (int i=0;i<4;i++)
{ if(strcmp(z[i],a)==0)
cout<<z[i];
else
cout<<"error";
}
getch ();
return 0;
}
答案 0 :(得分:5)
你不能将C风格的字符串函数(strcmp
)与C ++ std::string
混合使用 - 它可以很好地将C ++ std::string
类型与常规if (str1 == str2) ...
进行比较,所以有这里不需要使用strcmp
。