小甲鱼,带你学C带你飞
这两种在小甲鱼<带你学C带你飞>,数组指针练习时,还不是不明白,上面打印取值运算符时实际变量值,但是数组指针带不带取值运算符显示都是地址?指针:
数组指针:
#include <stdio.h>
int main
{
int array = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int *p = &array;
printf("p ->%p\n",p);
printf("*p ->%d\n",*p);
return 0;
}
数组指针:
#include <stdio.h>
int main
{
int array = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int (*p) = &array;
printf("p ->%p\n",p);
printf("*p ->%p\n",*p);
return 0;
} 数组名本身就是数组首地址,因此
int *p = &array; 这句是不对的
int *p = array 或者 int *p = &array这样才对
chxchxkkk 发表于 2020-2-3 12:39
数组名本身就是数组首地址,因此
int *p = &array; 这句是不对的
int *p = array 或者 int *p = &array
是的,复制的时候笔误,指针那里应该是不加取地址运算符。
页:
[1]