最新 最热

【C 语言】数组 ( 指针数组用法 | 菜单选择 )

定义 指针数组 , 数组中存放着指针 , 每个指针指向 字符串 常量 , 字符串常量在 全局区 中的 常量区 ;

2023-03-29
0

【C 语言】数组 ( 指针退化验证 | 计算数组大小 | #define LENGTH(array) (sizeof(array) / sizeof(*array)) )

假如 array 是数组 , 则 sizeof(array) 是整个数组的大小 , *array 是数组首元素 , sizeof(*array) 是数组首元素大小 , sizeof(array) / sizeof(*array) 就是数组大小 ;

2023-03-29
1

【C 语言】数组 ( 一维数组形参退化 | 二维数组形参退化 | 函数形参等价关系 )

C 中将 一维数组 作为参数 , 传递到函数中 , 该 一维数组 会退化为 指针 ;

2023-03-29
1

【C 语言】数组 ( 验证二维数组内存是线性的 | 打印二维数组 | 以一维数组方式打印二维数组 | 打印二维数组值和地址 )

定义一个函数 , 函数接收一个 int* 形参指针 , 使用该指针访问二维数组中的元素个数 , 也可以成功访问 ;

2023-03-29
0

【C 语言】数组 ( 多维数组做函数形参退化为指针过程 | int array[2][3] -> int array[][3] -> int (*array)[3] )

一维数组 作为 函数参数时 , 会退化为指针 ; 解决方案是 传入 数组首地址 和 数组元素个数 ;

2023-03-29
1

【C 语言】数组 ( 数组取值操作 | array[i][j] 用法 等价于 *( *(array = i) + j ) 用法 | 下标操作到指针操作演化过程 )

其中 array[i][j] 方式是比较符合 人类 阅读习惯的 , 编译器如果遇到上述代码 , 会将其翻译为 *( *(array = i) + j ) 代码 ;

2023-03-29
1

【C 语言】数组 ( 多维数组操作模型 | 取某个数组元素地址 | 取某个数组元素值 )

个元素的值 , 该值是 一维数组 , *array 一维数组名是数组首元素地址 , *array + 1 步长是一维数组元素大小 , 指向第

2023-03-29
0

【C 语言】数组 ( 多维数组本质 | 步长角度 理解 多维数组本质 )

array + i 表示第 i 行的地址 , 整个第 i 行地址 , array 是 二级指针 ;

2023-03-29
0

【C 语言】数组 ( 数组指针 | 数组指针定义 | 直接定义 数组指针 )

最后 , 将 array2 变量地址赋值给该 数组指针类型 变量 , 指针指向的数据类型为 int[3] 数组类型的变量 array2 ;

2023-03-29
1

【C 语言】数组 ( 数组指针 | 数组指针定义 | 使用 数组类型* 定义数组指针 )

最后 , 声明一个指针 , 将 array2 变量地址赋值给该指针 , 指针指向的数据类型为 int[3] 数组类型的变量 array2 ;

2023-03-29
1