《地址运算符&》
一元运算符&可以取得变量的存储地址。假设pooh是一个变量的名字,那么&pooh就是该变量的地址。
一个变量的地址可以被看作是该变量在内存中的位置。
在下列的程序中,使用地址运算符获得不同函数中具有相同名称的变量的存储地址。
#include<stdio.h>
void mikado(int);//声明函数
int main()
{
int pooh = 2, bah = 5;//main()函数中的局部变量
printf("In main(), pooth = %d and &pooh = %p\n",
pooh, &pooh);
printf("In main(), bah = %d and &bah = %p\n",
bah, &bah);
mikado(pooh);
return 0;
}
void mikado(int bah)//定义函数
{
int pooh = 2;//mikdo()函数中的局部变量
printf("In mikado(), pooth = %d and &pooh = %p\n",
pooh, &pooh);
printf("In mikado(), bah = %d and &bah = %p\n",
bah, &bah);
}
这里解释一下为什么两个pooh或bah变量具有不同的地址:
每个函数中的变量如果名字相同,但不是同一变量,所以两个pooh变量具有不同的地址。