自己做的网站涉黄,网站建设项目计划,提取wordpress小工具,国内购物网站大全变量名实质上是一段连续存储空间的别名#xff0c;是一个标号(门牌号)#xff0c;程序中通过变量来申请并命 名内存空间#xff0c;通过变量的名字可以使用存储空间。引用是 C中新增加的概念#xff0c;引用可以看作 一个已定义变量的别名。 引用的语法#xff1a; Type是一个标号(门牌号)程序中通过变量来申请并命 名内存空间通过变量的名字可以使用存储空间。引用是 C中新增加的概念引用可以看作 一个已定义变量的别名。 引用的语法 Type name 例如 int a 9 ; int b a ; 引用做函数参数 普通引用在声明时必须用其它的变量进行初始化引用作为函数参数声明时不进行初始化。 示例 #include iostream
using namespace std;
void myswap(int a, int b)
{int c 0;c a;a b;b c;
}
void myswap02(int *a, int *b)
{int c 0;c *a;*a *b;*b c;
}
// 引用作为函数参数声明时不进行初始化
void myswap03(int a, int b)
{int c 0;c a;a b;b c;
}
int main()
{int x, y;x 10;y 20;myswap(x, y); //无法起到交换效果printf(x:%d , y:%d \n, x, y);myswap02(x, y); // 使用指针printf(x:%d , y:%d \n, x, y);//a 就是 x 的别名 b 就是 y 的别名myswap03(x, y); // 引用printf(x:%d , y:%d \n, x, y);cout hello... endl;system(pause);return 0;
} 引用的意义和本质 意义 1引用作为其它变量的别名而存在因此在一些场合可以代替指针。 2引用相对于指针来说具有更好的可读性和实用性。 本质 1引用在 C 中的内部实现是一个常指针 (const *) 。 3从使用的角度引用会让人误会其只是一个别名没有自己的存储空间。这是 C 为了 实用性而做出的细节隐藏。 引用和指针的区别 1.指针是一个变量只不过这个变量存储的是一个地址指向内存的一个存储单元而引用跟原来的变量实质上是同一个东西可以理解为是原变量的一个别名而已。 2. 引用不可以为空当被创建的时候必须初始化而指针可以是空值可以在任何时候被初始化。 3. 可以有 const 指针但是没有 const 引用 4. 指针可以有多级但是引用只能是一级 int **p 合法 而 int a 是不合法的 5. 指针的值在初始化后可以改变即指向其它的存储单元而引用在进行初始化后就不会再改变了。 6. sizeof 引用得到的是所指向的变量 ( 对象 ) 的大小而 ”sizeof 指针 ” 得到的是指针本身的大小 7. 指针和引用的自增 () 运算意义不一样 8. 如果返回动态内存分配的对象或者内存必须使用指针引用可能引起内存泄漏