指针
- 就是保存地址的变量
int i;
int* p = &i;
int* p,q;
int *p,q;
指针变量
- 变量的值是内存的地址
- 普通变量的值是实际的值
- 指针变量的值是具有实际值的变量的地址
作为参数的指针
- viod f(int *p);
- 在被调用的时候得到了某个变量的地址
- int i = 0; f(&i);
- 在函数里面可以通过这个指针访问外面这个i
#intclude <stdio.h>
viod f(int *p);
int main(void)
{
int i = 6;
printf("&i=%p\n", &i);
f(&i);
g(i);
return 0;
}
void f(int *p)
{
printf(" p=%p\n", p);
}
void g(int k)
{
printf("k=%d\n", k);
}
访问那个地址上的变量*
- *是一个单目运算符,用来访问指针的值所表示的地址上的变量
- 可以做右值也可以做左值
- int k = *p;
- *p = k + 1;