c语言编程引用指针(c的引用篇指针)
c语言编程引用指针(c的引用篇指针)a)将变量名作为实参,以便于扩充函数的传递功能;8、作用:5、引用具有专一性,不能对一个引用变量初始化两次。(错误:int a1 a2;int &b=a1;int &b=a2;)。6、引用具有相连性,如果a的值变化了,则引用变量的值也发生了变化,因为他们具有同一个内存地址。7、变量引用时,数据类型必须相同 使用const除外。
1、在c 中,变量的引用就是变量的别名。
2、int a;int &b=a;(b就是对a的引用)“&”是引用声明符号,此处并不代表地址。
3、对变量的引用,并不另外开辟内存单元,b和a都是一个内存单元。
4、在声明一个引用时,必须对其初始化(但是作为函数中的参数时除外)。
5、引用具有专一性,不能对一个引用变量初始化两次。(错误:int a1 a2;int &b=a1;int &b=a2;)。
6、引用具有相连性,如果a的值变化了,则引用变量的值也发生了变化,因为他们具有同一个内存地址。
7、变量引用时,数据类型必须相同 使用const除外。
8、作用:
a)将变量名作为实参,以便于扩充函数的传递功能;
b) 传送变量的指针;
c)传送变量的别名;
变量引用和指针测试代码如下:CPP_Point.cpp。
[html] view plain copy
- /*
- 测试变量的引用和指针的应用
- */
- #include <iostream>
- using namespace std;
- int main()
- {
- int a=3;
- int &b=a; //b不是地址,为a的引用(别名)[建立引用时必须初始化对象(形参除外),必须声明数据类型];
- cout<<"b="<<b<<endl; //输出b的值为3;
- int *p=&b;
- cout<<"p="<<p<<endl; //输出的p为内存中的地址0x69fee4;
- cout<<"*p="<<*p<<endl; //*p的值为3;
- int *pp=&a;
- cout<<"*pp="<<*pp<<endl;
- cout<<"pp="<<pp<<endl;
- cout<<"**********************************************"<<endl;
- int i=5;
- int *ppp=&i;
- int * &pt=ppp; //表示一个 int *类型的对象对a的引用
- cout<<"pt="<<pt<<endl;
- cout<<"&pt="<<&pt<<endl;
- cout<<"*pt="<<*pt<<endl;
- cout<<"* &pt="<<* &pt<<endl;
- return 0;
- }
截图如下: