永发信息网

C语言如何定义指针指向字符型二维数组

答案:5  悬赏:60  手机版
解决时间 2021-11-26 00:54
C语言如何定义指针指向字符型二维数组
最佳答案
在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 str[3][10];
定义指针型数组 : char *p[5] = {str[0],str[1],str[2]};
如定义:int a[3][4];
int *p; p=a[0];此时p就指向0行0列元素

1、定义二维指针数组与定义一维指针数组差不多,只是矩阵的维度增加了一维而已。

2、下面通过具体的实例来说明如何定义一个二维数组:

int *p[2][3];  // 定义一个二维数组,只是定义,并没有分配地址空间
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]);  // 输出结果
char c[4][5];
char (*pc)[5];
pc=c;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
18毫米的螺纹钢多少钱1米
小学课本中《贴春联》中的春联都是什么意思
6除以(3-x)的函数的的单调性
ru'guo'wo'ai'ni'mei
0.74除以括号77×14/100乘括号
出嫁女儿帮父亲干活,摔伤了怎么赔偿
求大神详解23题
2平米与池塘相连的小池塘能养多少鱼
傍晚房间温度比中午高?为什么呢?
想开一家茶桔便,算上加盟费,设备费,装修费
《成龙历险记》中小玉将黑影兵团的恶魔印记印
收废品(松枫港路135号附近收废品)地址好找么
2016息县一高高考成绩
判断:0.3小时是一个小时的30%.这句话对吗
IFIX4.5历史曲线如何弄?
推荐资讯
昆山求写的好的装修日记网站?
java 4=1*2*3*4*4=24 如何把后面的*4 去掉
康桥风尚停车场(环城北路西段671号附近康桥风
书柜层高一般多少
日本带回来的欧姆龙电动牙刷充电器直接插在插
stata怎么弄线性回归 当应变量为log时
45减(18×7-95)用脱式计算
《美妙人生》最后的结局是什么?
5175÷207+102×9怎样用梯等式做?
送礼就是求人办事吗
伺服电机上电无保持,手能转动怎么回事?
情侣网名『.独爱小丫头另一半是什么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?