📌  相关文章
📜  c++ 从字符串中获取字符 (1)

📅  最后修改于: 2023-12-03 15:29:52.365000             🧑  作者: Mango

从字符串中获取字符

在C++中,我们可以通过下标或迭代器的方式从字符串中获取字符。下面是两种方法的示例:

1. 使用下标

利用[]运算符,我们可以直接根据下标取得字符串中的字符。代码示例如下:

#include <iostream>
#include <string>

int main() {
    std::string s = "hello world";
    char c1 = s[0];      // 获取第一个字符
    char c2 = s[6];      // 获取第七个字符

    std::cout << "c1: " << c1 << std::endl;   // 输出:c1: h
    std::cout << "c2: " << c2 << std::endl;   // 输出:c2: w

    return 0;
}

在上面的代码中,我们定义了一个字符串s,然后通过s[0]s[6]获取了第一个和第七个字符。需要注意的是,我们不能使用越界的下标来访问字符串中的字符,否则会导致不可预料的结果和错误。

2. 使用迭代器

C++中的迭代器提供了一种通用的访问容器元素的方式,也可以用于字符串。我们可以通过迭代器来遍历字符串中的所有字符。示例代码如下:

#include <iostream>
#include <string>

int main() {
    std::string s = "hello world";
    for (std::string::iterator it = s.begin(); it != s.end(); ++it) {
        std::cout << *it << " ";   // 输出每个字符
    }

    return 0;
}

在上面的代码中,我们使用了字符串的迭代器遍历了字符串中的所有字符,并输出了每个字符。需要注意的是,当字符串为空时,使用迭代器遍历会导致程序崩溃,因此我们需要在使用迭代器前判断字符串是否为空。