作业帮 > 综合 > 作业

谁能详细清楚地帮我解释一下*p=&a[0]的意思含义啊,谢谢了!

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/20 18:08:59
谁能详细清楚地帮我解释一下*p=&a[0]的意思含义啊,谢谢了!
首先你这里*p是在初始化呢还是在赋值呢?
如果是 int *p=&a[0];这样的话.那么意思就是说,将数组a的第一个元素的地址交给p这个指针保存
如果是 *p在被赋值,那么前提是你的p必须已经指向了一块内存比如如下:
int i;
int *p=&i;
如果是这样.那么p所指向的就是i的地址.然后
*p=&a[0];意思就是说,将数组a的第一个元素的地址交给P所指向的内存保管
注意:但是..上面的只是理论知识,实际中会有一个问题要注意&a[0];取的是一个地址.我们且不管这个地址是什么.总知他肯定是一个地址.所以保存他的必须是一个指针.那么*p也就是p所指向的内存,必须是一个申请好了的指针类型内存,所以p应该是一个指向指针的指针.那么就是
int j;
int *i=&j;
接着int **p=&i;
然后*p=&a[0];
这样就符合了实际情况.