如何在 C++ 中处理字符串数组

How Process With An String Array In C++

在我的一个问题中,我需要获取 'n' 字符串,获取字符串后,我应该处理它们:

{
int n=0;
cin>>n;
string user[n];
for(int i=0;i<n;i++)
{
  cin>>user[n];
}

}

获取字符串后如何处理并比较它们?

例如,如果我输入此字符串:"asdabdabmsd" 和 "ajksdasbgdjkabs",如何比较这两个字符串中的指定单词?

首先,获取对两个字符串使用两个循环的两个strings.After的长度,并逐个字符地比较两个字符串。

首先,纠正您存储字符串的方式。应该是 cin>>user[i]

{
int n=0;
cin>>n;
std::vector <std::string> user(n);
for(int i=0;i<n;i++)
{
  cin>>user[i];  // it should be 'i' not 'n'
}

}

其次,如果你想比较,说第一个字符串的第二个字母和第三个字符串的第四个字母,使用user[0][1] == user[2][3]

表示获取第j个字符串的第i个字母,使用user[j-1][i-1]

需要使用getline()(http://en.cppreference.com/w/cpp/string/basic_string/getline)而不是cin来获取输入字符串,否则如果输入字符串包含白色space输入字符串的剩余部分将不会被忽略。