当前位置: 首页> 科技> 名企 > 9.二维数组的遍历和存储

9.二维数组的遍历和存储

时间:2025/7/11 21:42:28来源:https://blog.csdn.net/qq_24428851/article/details/140024227 浏览次数:0次

二维数组的遍历和存储

二维数组的遍历

  • 二维数组a[3][4],可分解为三个一维数组,其数组名分别为:
  • 这三个一维数组都有4个元素,例如:一维数组a[0]的 元素为a[0][0],a[0][1],a[0][2],a[0][3]。
  • 所以遍历二维数组无非就是先取出二维数组中得一维数组, 然后再从一维数组中取出每个元素的值
  • 示例
    char cs[2][3] = {{'a', 'b', 'c'},{'d', 'e', 'f'}};printf("%c", cs[0][0]);// 第一个[0]取出一维数组, 第二个[0]取出一维数组中对应的元素
    char cs[2][3] = {{'a', 'b', 'c'},{'d', 'e', 'f'}};for (int i = 0; i < 2; i++) { // 外循环取出一维数组// ifor (int j = 0; j < 3; j++) {// 内循环取出一维数组的每个元素printf("%c", cs[i][j]);}printf("\n");}

注意: 必须强调的是,a[0],a[1],a[2]不能当作下标变量使用,它们是数组名,不是一个单纯的下标变量


二维数组的存储

  • 和以为数组一样
  • 给数组分配存储空间从内存地址大开始分配
  • 给数组元素分配空间, 从所占用内存地址小的开始分配
  • 往每个元素中存储数据从高地址开始存储
#include <stdio.h>
int main()
{char cs[2][3] = {{'a', 'b', 'c'},{'d', 'e', 'f'}};// cs == &cs == &cs[0] == &cs[0][0]printf("cs = %p\n", cs);                // 0060FEAAprintf("&cs = %p\n", &cs);              // 0060FEAAprintf("&cs[0] = %p\n", &cs[0]);        // 0060FEAAprintf("&cs[0][0] = %p\n", &cs[0][0]);  // 0060FEAAreturn 0;
}

关键字:9.二维数组的遍历和存储

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: