首页 > 其他 > 详细

STL容器之string存取字符串 []和at访问区别

时间:2021-08-26 11:22:09      阅读:16      评论:0      收藏:0      [点我收藏+]

存取字符串

  • char& operator[](int n);//通过[]方式取字符
  • char& at(int n);//通过at方法获取字符
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
using namespace std;
#include <string>

/*
存取字符串
char& operator[](int n);//通过[]方式取字符
char& at(int n);//通过at方法获取字符

*/
void test01()
{
    string s = "hello world";
    for (int i = 0; i < s.size(); i++)
    {
        //cout << s[i] << endl;   //char& operator[](int n);
        cout << s.at(i) << endl;//char& at(int n)
    }
}

int main()
{
    test01();
    system("Pause");
    return 0;
}

结果:

技术分享图片

访问结果一样,但是还是有区别

[]和at区别

  • []访问越界,直接挂掉
  • at会抛出异常

技术分享图片

结果:

技术分享图片

 

而at访问

技术分享图片

 

结果:

技术分享图片

 

STL容器之string存取字符串 []和at访问区别

原文:https://www.cnblogs.com/yifengs/p/15188520.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!