wyxnogiveup 发表于 2022-12-1 19:00:36

想问下大佬们,数组名是一个地址,那么数组可以看做一个地址吗?

比如char a[]="fishc",a是第一个元素的地址,那么把“fishc”拿出来看的时候,比如char *array={"fishc","five",.......}
这里的“fishc”怎么理解,既然是指针数组的元素,那么它能看成一个地址吗

jhq999 发表于 2022-12-1 19:08:57

char *s1="fishc",*s2="five";
char *array={s1,s2,.......};

xiaotubie 发表于 2022-12-1 20:40:55

本帖最后由 xiaotubie 于 2022-12-1 20:42 编辑

"fishc" 看成 字符数组   char strArr={'f','i','s','h','c','\0'}
数组名strArr用于表达式中可以看成首元素f字符的指针或者地址

所以char *str="fishc" 可以看成char *str =strArr;
所以char *array={"fishc"}; 可以看成char *array={strArr};
其实都是首元素的指针(或者认为是地址)去初始化str和array数组

homeskating 发表于 2022-12-1 22:31:31

char a[]="fishc"是一个字符数组,char *array={"fishc","five",.......}是一个字符指针数组,字符指针指向了char a[]这个字符数组的地址

wyxnogiveup 发表于 2022-12-2 08:25:18

谢谢大佬!
页: [1]
查看完整版本: 想问下大佬们,数组名是一个地址,那么数组可以看做一个地址吗?