C++中*与&的区别

来源:互联网 发布:c语言中如何判断闰年 编辑:程序博客网 时间:2024/06/03 19:02

一、*运算符

1、在定义时,* 是一个标识符,声明该变量是一个指针

例1:int *p; a=5;p=&a;定义一个int类型的指针变量p,通过取值地址符&获取存储5的变量a地址,将他赋值给p,即指针p存储的是变量a的地址

2、在调用是,*是一个取值运算符,指向指针存储的地址的变量

例2:在例1的基础上获取指针p指向地址存储的值,int  b=*p;

二、&运算符

1、取地址运算符,对变量使用可以获得该变量的地址

例3:对于变量c,&c代表c在内存中的存储地址

2、引用,就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样

例4:int d=5; int &e=d;引用不改变变量的存储地址,只是换了一个名字,变量d和e代表的值都是,若改变变量d的值为6,变量e的值也会直接也会变为6;


0 0