我想搜索一个字符串的二维数组。C++二维数组搜索错误
2d数组包含名称和生日。
我想搜索一个名字并显示他们的生日。
当我尝试使用STRCMP,看是否输入名称比较阵列中任何我得到这个错误:
IntelliSense: no suitable conversion function from "std::string" to "const char *" exists
这里是代码位,我有:
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
int main()
{
char name[100];
string firstnames[2][4]= { {"John", "Emily", "Juan", "Sally"},
{"Nov 6", "Jan 13", "Oct 10", "Mar 29"} };
cout << "Enter a name: \n";
cin >> name;
if (strcmp(name, firstnames[0][0]) == 0)
{
}
}
我不明白如何解决这个错误?我有另外一个类似的错误,但是当我将名称改为char数组而不是字符串时,它就消失了。所以,我认为它与此有关,但我不知道如何将输入的名称与数组进行比较以找到匹配。
为什么不'std :: map'? – P0W
我到那里有一个问题,但我不知道如何使这两个工作?我认为这个名字的数组需要是字符串,而且我在多个网站上看到它需要作为字符数组来比较......显然,有一些我已经错过了,并且没有接受它。 – user1368970
我还没有使用std :: things,我在哪里包含它? – user1368970