C语言中“&”是什么意思?什么作用?

来源:百度知道 编辑:UC知道 时间:2024/06/04 07:28:04
书上说的“&“的含义是“取地址”
什么叫“取地址”能说下作用吗?
多谢~~~

就是字面意思“取变量的地址”的意思么
变量在声明的时候就会有它的地址么 如果你要对其地址做些什么的话 就用这个符号么
比如用scanf输入a变量的时候 加取地址符 是为了把你输入的数据存放在a的地址中 在以后就可以对a进行操作了

所谓取地址,就是取得变量在内存中的物理地址,我们知道变量在内存中都是有一个地址的,物理地址唯一标识了变量.
指针存放的就是变量的地址,赋值后就可用指针来操纵变量.例:
int i = 0;
int *p = &i;

*p = 2; // ==> i = 2

当在变量前时,如&a,表示取地址,
做运算符时,如a&b,表示二进制与运算,
做逻辑运算时(要两个连用,即&&),如表达式1&&表达式2,表示逻辑与运算

p=&a就是说把a的地址赋给p

取地址就是取后面参量的地址呗,计算机依靠地址区分,
比如说,你先声明了变量a,就是在计算机内部申请了一空间,之后做的操作就在这个空间里进行,一个空间当然有其地址,后面scanf("%d",&a)就是以a的地址中为依据找个空间输数

取在内存中的地址,这样做出的修改就可以保存了,而且通过地址可以访问。