S1E23动动手1
看不懂,求解答!!! p=arrey;p="FishC";
p='F';
*p=p;
jhq999 发表于 2022-2-1 11:48
为什么不是定义成 char (*p) = &array; 本帖最后由 jhq999 于 2022-2-1 21:23 编辑
LeaflLit 发表于 2022-2-1 18:41
为什么不是定义成 char (*p) = &array;
char *array是一维指针数组,
&array是对这个指针数组取指针
char (*p) 是一维是5个元素的二维字符数组的指针不可能被赋值成字符指针数组取指针
jhq999 发表于 2022-2-1 21:20
char *array是一维指针数组,
&array是对这个指针数组取指针
char (*p) 是一维是5个元素的二 ...
可以理解成他们维度不同吗 LeaflLit 发表于 2022-2-1 23:09
可以理解成他们维度不同吗
类型不同 LeaflLit 发表于 2022-2-1 23:09
可以理解成他们维度不同吗
从简单代码试试看,你应该比较容易理解:#include <stdio.h>
int main()
{
// 字符、字符串、指针数组
char character = 'B';
char string = "Star";
char *array = {"FischC", "Five", "Star", "Good", "WoW"};
// 指针分别指向以上字符、字符串、指针数组
char *a = &character;
char (*b) = &string;
char *(*c) = &array;
// 打印
printf("a = %c\n", *a);
printf("b = %c\n", **b);
printf("c = %c\n", ***c);
return 0;
}结果:a = B
b = S
c = F jhq999 发表于 2022-2-2 10:06
类型不同
ok 傻眼貓咪 发表于 2022-2-2 11:11
从简单代码试试看,你应该比较容易理解:结果:
明白
页:
[1]