如何访问std :: string变量中的每个成员?例如,如果我有
string buff;
假设buff
将"10 20 A"
作为ASCII内容。那么我怎么能分别访问10,20和A?
答案 0 :(得分:5)
答案 1 :(得分:3)
您可以按索引访问字符串。即duff [0],duff [1]和duff [2]。
我刚试过。这很有效。
string helloWorld[2] = {"HELLO", "WORLD"};
char c = helloWorld[0][0];
cout << c;
输出“H”
答案 2 :(得分:1)
我发现你已经标记了C和C ++。
如果您使用的是C,则字符串是一个字符数组。您可以像访问普通数组一样访问每个字符:
char a = duff[0];
char b = duff[1];
char c = duff[2];
如果您使用的是C ++并使用字符数组,请参阅上文。如果您使用std::string
(这就是为什么C和C ++应该单独标记),有很多方法可以访问字符串中的每个字符:
// std::string::iterator if you want the string to be modifiable
for (std::string::const_iterator i = duff.begin(); i != duff.end(); ++i)
{
}
或:
char c = duff.at(i); // where i is the index; the same as duff[i]
可能更多。