📅  最后修改于: 2023-12-03 15:07:37.910000             🧑  作者: Mango
在 C++ 中,字符串通常表示为字符数组。可以使用不同的方法来访问给定字符串中的字符,以下是一些常见的方法:
可以使用数组索引访问字符串中的字符。例如:
#include <iostream>
#include <string>
int main()
{
std::string str = "Hello World!";
std::cout << str[0] << std::endl; // Output: 'H'
std::cout << str[6] << std::endl; // Output: 'W'
return 0;
}
注意: 通过数组索引访问字符串中的字符时,必须确保访问的索引不越界。
与数组索引类似,也可以使用 at() 函数访问字符串中的字符。但是,at() 函数会检查索引是否越界,并在越界时抛出异常。例如:
#include <iostream>
#include <string>
int main()
{
std::string str = "Hello World!";
std::cout << str.at(0) << std::endl; // Output: 'H'
std::cout << str.at(6) << std::endl; // Output: 'W'
std::cout << str.at(12) << std::endl; // Out of range exception
return 0;
}
可以使用迭代器访问字符串中的字符,例如:
#include <iostream>
#include <string>
int main()
{
std::string str = "Hello World!";
for (std::string::iterator it = str.begin(); it != str.end(); ++it)
{
std::cout << *it << std::endl;
}
return 0;
}
注意: 迭代器是一个泛型概念,它可以用于访问任何容器中的元素。
C++11 引入了 for-each 循环,可以直接使用其访问字符串中的字符。例如:
#include <iostream>
#include <string>
int main()
{
std::string str = "Hello World!";
for (char c : str)
{
std::cout << c << std::endl;
}
return 0;
}
以上是在 C++ 中访问给定字符串中字符的几种常见方法。使用不同的方法可以根据实际需要更方便地访问字符串中的字符。