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

- 上一篇:Arduino超声波测距仪实验
- 下一篇:python取字符串后三位