当前位置:首页 C++ > 正文

C++ string获取字符串元素:[]和at()

作者:野牛程序员:2023-11-28 09:15:50 C++阅读 3136

使用[]at()都是用于访问C++字符串(std::string)中的特定元素的方法。它们的基本功能相似,但有一些细微的区别。

[]运算符:

[]运算符是C++中用于访问数组和类似数据结构中元素的通用方法。对于字符串,它允许通过索引来访问特定位置的字符。

#include <iostream>
#include <string>

int main() {
    std::string str = "Hello, World!";
    
    // 使用[]访问字符串的第一个字符(索引从0开始)
    char firstChar = str[0];
    
    // 使用[]访问字符串的第五个字符
    char fifthChar = str[4];
    
    std::cout << "First character: " << firstChar << std::endl;
    std::cout << "Fifth character: " << fifthChar << std::endl;

    return 0;
}

at()函数:

at()函数是std::string类提供的成员函数,它与[]类似,用于按索引访问字符串中的字符。但是,与[]不同,at()会检查索引是否越界,如果越界,它会抛出std::out_of_range异常。

#include <iostream>
#include <string>

int main() {
    std::string str = "Hello, World!";
    
    // 使用at()访问字符串的第一个字符(索引从0开始)
    char firstChar = str.at(0);
    
    // 使用at()访问字符串的第五个字符
    char fifthChar = str.at(4);
    
    std::cout << "First character: " << firstChar << std::endl;
    std::cout << "Fifth character: " << fifthChar << std::endl;

    return 0;
}

总的来说,如果确定索引不会越界,可以使用[]运算符,因为它更简洁。但如果存在越界的可能性,并且想要处理越界情况,可以考虑使用at()函数。


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击