Day04

一维数组

  1. 随机访问——只需要执行固定条数的指令
  2. 数组名建议使用名复(表示数组是一个存储多个元素的容器)
  3. 数组的长度建议使用宏常量,且不能是变量
  4. 在main函数中写:int arr[10];是一个局部变量,必须手动初始化(全局变量则会自动初始化),不然不可以直接使用
  5. 越界访问——未定义;越界修改——程序崩溃
  6. 求中间索引,不用左右两端相加除二,用区间的一边长度加上left就是区间的中间索引,且乘或除建议用位运算符替代,但是得注意要加小括号(否则可能会被优先级影响)

 二维数组

  1. 从内存的角度上来思考,从本质上来说,没有二维数组,二维数组实际上是元素为一维数组的一维数组,例如:二维数组:int a[4] [3],元素类型是int[3],即二维数组a有4个一维数组组成,这4个一维数组都是长度为3的int类型数组
  2. 假如存在一个二维数组int arr[5][5];
    arr[0]是二维数组的第1个元素,也就是第1个int数组
    arr[3]是二维数组的第4个元素,也就是第4个int数组
    arr[2][2]是二维数组的第3个元素,也就是3个int数组中的第3个元素

    声明数组的长度必须是一个在编译时期确定大小的常量与栈的内存管理有关

你可能感兴趣的:(王道C++嵌入式4期,自用,c语言,王道嵌入式4期)