// 指针
// 保存地址的变量
int i;
int* p = &i; //p表示一个指针,指向int 把i的地址交给p
//当i的地址为 0x2000 则P为2000 俗称 p指向i
int* p,q;
int *p,q;
int a = 6;
printf("&a = %p\n",&a); 取地址
int *p; 指针
p = &a; p指向a的地址
printf("%p\n",p); 输出p(也就是a的地址)
printf("%p",*p); (*在这里表示 解指针 输出前面a的赋值 6;)
*p = 5 解指针(a= 6) 然后赋值为5(a=5 ) 前面的a也会变成5
int c[3] = {1,3,5};
printf("%d\n",c); //显示数组的地址
printf("%d\n",&c); //c = &c =&c[0] 显示数组的地址
printf("%d\n",&c[0]);
printf("%d\n",*c); //解指针 会输出数组的第 0个元素
printf("%d\n",*(c+1)); //解指针 会输出数组的第 0+1个元素 对指针进行+1 -1 就是地址向右移 左移
printf("%d\n",*c+1); //会先解指针c 得出数组c第一个元素1,再加一得出结果2