C++的原生数组是什么(C++,开发技术)

时间:2024-04-29 20:12:00 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    1.数组

    1.1 数组的声明格式

    1.1.1. 格式一

    数据类型 数组变量名称[数组元素个数]{初始化值, 初始化值...}

    inta[10]{};
    1.1.2. 格式二

    变量类型 数组名[]{初始化, 初始化...}

    inta[]{1,2,,3};//编译器会自动将a声明为一个有3个元素的数组

    1.2.数组的本质

    数组的本质是按照所申请的数据类型,向操作系统申请了一段连续的内存空间。两个特征:

    连续的有序的

    2. 数组遍历

    2.1. 常规

     intstudentId[]{101,102,103,104,105,106}; //数组遍历 for(inti=0;i<sizeof(studentId)/sizeof(int);i++) std::cout<<studentId[i]<<std::endl;

    2.2. C++ 11 遍历新语法

    2.2.1. 格式一

    for(变量类型 变量名称:数组)
    循环内容;

     for(inti:studentId) std::cout<<i<<std::endl;//i不再是索引,而是数组内的元素;
    2.2.2. 格式二

    for(auto 变量名称:数组)
    循环内容;

     for(autoi:studentId) std::cout<<i<<std::endl;//i不再是索引,而是数组内的元素;

    3. 多维数组

    3.1 多维数组的本质

    C++的原生数组是什么

    3.2. 声明格式

    类型 变量名称[元素个数][元素个数]...[元素个数]{};

    intstudentId[3][5]{};

    多维数组的初始化:

    intstudentId[3][5]{{101,102,103,104,105,106},{201,202,203,204,205,206},{301,302,303,304,305,306}};

    3.3. 多维数组的遍历

     intstudentId[3][5]{ {1,2,3,4,5}, {11,12,13,14,15}, {21,22,23,24,25} }; for(intx=0;x<3;x++) { intcount{}; for(inty:studentId[x]) { count++; std::cout<<x+1<<"班第"<<count<<"个同学的学号是"<<y<<std::endl; } }

    4. 数组安全

    由于数组的本质是向操作系统申请了一块内存,因此越界的数组将会访问到不该访问的地址,这种越界将会造成程序奔溃,BUG,错误,更可怕的是,数组越界漏洞,可能会让攻击着拿到操作系统的控制权。

     </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
    本文:C++的原生数组是什么的详细内容,希望对您有所帮助,信息来源于网络。
    上一篇:不使用Vuex如何封装登录状态判断下一篇:

    13 人围观 / 0 条评论 ↓快速评论↓

    (必须)

    (必须,保密)

    阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18