C语言如何定义指针指向字符型二维数组
答案:5 悬赏:60 手机版
解决时间 2021-11-26 00:54
- 提问者网友:缘字诀
- 2021-11-25 12:40
C语言如何定义指针指向字符型二维数组
最佳答案
- 五星知识达人网友:长青诗
- 2021-11-25 13:50
在C语言中,可以通过如下方式来定义指向字符型二维数组的指针:
char c[4][5]; // 定义一个4行5列的字符型二维数组
char (*pc)[5]; // 定义一个含5个元素的数组指针
pc=c; // 将数组指针pc指向二维字符数组c
注:
char (*pc)[5] 不能写为 char *pc[5]
char (*pc)[5] 表示数组指针,数组中每个元素为char型;
char *pc[5] 表示指针数组,数组中每个元素为char*,也即每个元素为指针。
char c[4][5]; // 定义一个4行5列的字符型二维数组
char (*pc)[5]; // 定义一个含5个元素的数组指针
pc=c; // 将数组指针pc指向二维字符数组c
注:
char (*pc)[5] 不能写为 char *pc[5]
char (*pc)[5] 表示数组指针,数组中每个元素为char型;
char *pc[5] 表示指针数组,数组中每个元素为char*,也即每个元素为指针。
全部回答
- 1楼网友:拾荒鲤
- 2021-11-25 16:45
定义字符型二维数组:char str[3][10];
定义指针型数组 : char *p[5] = {str[0],str[1],str[2]};
定义指针型数组 : char *p[5] = {str[0],str[1],str[2]};
- 2楼网友:酒者煙囻
- 2021-11-25 15:06
如定义:int a[3][4];
int *p; p=a[0];此时p就指向0行0列元素
int *p; p=a[0];此时p就指向0行0列元素
- 3楼网友:醉吻情书
- 2021-11-25 14:54
1、定义二维指针数组与定义一维指针数组差不多,只是矩阵的维度增加了一维而已。
2、下面通过具体的实例来说明如何定义一个二维数组:
int i,j; // 数组的行数和列数
// 下面的2个for循环是用来对二维指针数组进行初始化的,也即分配地址。如果不进行初始化操作,就会使指针变为野指针(即指向不明)。
for(i=0; i<2; i++)
for(j=0; j<3; j++)
p[i][j] = (int *)malloc(sizeof(int));
*p[0][1] = 2; // 对指针数组中指针所指向的内存单元进行赋值操作
printf("%d ", *p[0][1]); // 输出结果
- 4楼网友:青灯有味
- 2021-11-25 14:06
char c[4][5];
char (*pc)[5];
pc=c;
char (*pc)[5];
pc=c;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯