|

楼主 |
发表于 2020-8-28 13:09:39
|
显示全部楼层
本帖最后由 komodo 于 2020-8-28 13:12 编辑
后来的同学可以看如下代码,如果你也搞清楚了的话,看到如下代码也会豁然开朗的
- #include<stdio.h>
- #include<string.h>
- int main(void){
- char *p[] = {
- "dalian",
- "shenzhen",
- "guangxi"
- };
- printf("p = %p\n", p);
- printf("&p = %p\n", &p);
- printf("&p[0] = %p\n", &p[0]);
- printf("\n");
- printf("*p = %p\n", *p);
- printf("p[0] = %p\n", p[0]);
- printf("&p[0][0] = %p\n", &p[0][0]);
- printf("\n");
- printf("*p = %s\n", *p);
- printf("p[0] = %s\n", p[0]);
- printf("\n");
- printf("**p = %c\n", **p);
- printf("*p[0] = %c\n", *p[0]);
- printf("p[0][0] = %c\n", p[0][0]);
- return 0;
- }
- /*
- p = 0x7ffee9ea96b0
- &p = 0x7ffee9ea96b0
- &p[0] = 0x7ffee9ea96b0
- *p = 0x105d56ef8
- p[0] = 0x105d56ef8
- &p[0][0] = 0x105d56ef8
- *p = dalian
- p[0] = dalian
- **p = d
- *p[0] = d
- p[0][0] = d
- */
复制代码
|
|