如何在c+;中将字符串拆分为单个字符+;? 正如标题所说,如何将字符串分割成C++中的单个字符?例如,如果字符串是“cat”,如何将其拆分为字符c、a和t

如何在c+;中将字符串拆分为单个字符+;? 正如标题所说,如何将字符串分割成C++中的单个字符?例如,如果字符串是“cat”,如何将其拆分为字符c、a和t,c++,C++,使用操作符[]表示感谢。e、 g std::string cat{"cat"}; if(cat[0] == 'c') //stuff 若您使用的是std::string,那个么只需使用.c_str()即可获得一个字符数组 在c++11中,您还可以执行以下操作: for( auto c : a ) { cout << c << '\n'; } 用于(自动c:a) { cout如果要将它们存储在向量中: string str("cat"); vector&

使用
操作符[]

表示感谢。e、 g

std::string cat{"cat"};
if(cat[0] == 'c')
    //stuff

若您使用的是
std::string
,那个么只需使用
.c_str()
即可获得一个字符数组

c++11
中,您还可以执行以下操作:

for( auto c : a )
{
    cout << c << '\n';
}
用于(自动c:a)
{

cout如果要将它们存储在向量中:

string str("cat");
vector<char> chars(str.begin(), str.end());

for (char c : chars)
    cout << c << endl;
string str(“cat”);
向量字符(str.begin(),str.end());
for(char c:chars)

你想对这些字符做什么?它们在字符串中已经是分开的,你可以随意访问它们。你甚至不需要创建向量。你只需说
for(char&c:str)