C语言定义并初始化一个二维数组(利用指针数组),可以实现二位数组的每一行的元素个数不同
1.代码如下
#include <stdio.h>
#include <stdlib.h>
int main() {
// arr是一个指针数组,即这个数组的所有元素都是指针,每一个元素都指向一个int型数组,每一个int型数组的长度可以不同
int* arr[3] = {
(int*)malloc(sizeof(int) * 3), \
(int*)malloc(sizeof(int) * 6), \
(int*)malloc(sizeof(int) * 4)
};
for (int i = 0; i < 3; i++) {
// arr[0]是一个指针
scanf("%d", &arr[0][i]);
}
for (int i = 0; i < 6; i++) {
// arr[1]是一个指针
scanf("%d", &arr[1][i]);
}
for (int i = 0; i < 4; i++) {
// arr[2]是一个指针
scanf("%d", &arr[2][i]);
}
return 0;
}
标签:arr,一个二维,int,malloc,C语言,数组,sizeof,指针
From: https://www.cnblogs.com/gjsun/p/17609917.html