我希望有2个字符串作为输入,所以我可以使用getline(cin,s)
(所以我可以选择整行直到'\n'
)然后我想搜索第二个数组,如果它包含单词第一个数组没有使用string::find()
或strstr()
。
但我仍然找不到将字符串转换为数组的方法
int main()
{
string s;
string s2;
char array[50];
char array2[50];
cout<<"Give me the first word"<<endl;
getline(cin,s);
cout<<"Give me the text"<<endl;
getline(cin.s2);
array=s;
array2=s2;
}
我想的第二种方式是从一开始就使用数组来完成这项工作:
char array[50];
cin.getline(array,50);
但是,如果我使用直数组,有什么方法可以像字符串一样找到数组的长度?
//example
string s;
int x;
getline(cin,s);
x=line.length();
答案 0 :(得分:4)
只是不要这样做,因为你不需要 来做。
您可以使用c_str()
函数将std::string
转换为char数组,但在您的情况下,这是不必要的。对于查找元素的情况(我认为是您需要的元素),您可以使用字符串operator[]
并将其视为普通数组。
答案 1 :(得分:2)