关于指针的问题
看完视频想做个总结,但是不知道对不对指针就是指向一个地址,这个地址存放常量
指针数组就是指向一个数组 ,这个数组里面都是指针
数组指针就是直接指向一个数组,数组常量元素不是指针,
看完视频想对于自己的理解不知道对不对,请各位大哥给我分析一下
带不带*代表的分别是什么意思,
#include <stdio.h>
int main()
{
int temp = {1, 2, 3, 4, 5};
int (*p2) = &temp;
int i;
for (i = 0; i < 5; i++)
{
printf("%d\n", *(*p2 + i));
}
return 0;
}
$ gcc test4.c && ./a.out
1
2
3
4
5
就是这个*P是不是代表着指向这个数组的第一位数1但是不显示这个第一位数,*(*p)才是提取显示这个数组的各个元素
求各位大佬解答下 指针存放地址,这个地址对应的内存空间又存放有其他数据
指针数组就是一个数组,它的每一个元素都是一个指针
数组指针是一个指针,指向一个数组
(*p) = &temp;(数组指针指向一维数组要加& 二维数组不用&)
通过指针法访问数组以二维数组为列是这样的*(*(p + i) + j) 表示取temp;
三维数组就是*(*(*p + i ) + j ) + k)表示取temp
现在temp是一个一位数组他的i就是0
也就是*(*(p + 0) + j)
就是*(*p + j) 即取temp 就是要努力呀 发表于 2020-3-9 17:38
指针存放地址,这个地址对应的内存空间又存放有其他数据
指针数组就是一个数组,它的每一个元素都是一个指 ...
好好理解一下 你上面写的概念一个都不对 再定义一个变量的时候 * 表示定义一个指针变量
再其他情况下 * 表示取值 取这个指针存放的地址对应的内存空间里的数据 就是要努力呀 发表于 2020-3-9 17:38
指针存放地址,这个地址对应的内存空间又存放有其他数据
指针数组就是一个数组,它的每一个元素都是一个指 ...
额 明白了明白了 还好来问了 谢谢大佬{:10_275:}
页:
[1]