欢迎来到天天文库
浏览记录
ID:61906312
大小:362.00 KB
页数:79页
时间:2020-02-07
《第2章 C++程序设计基础-5(指针和引用).ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、2-5指针和引用2-5.1指针2-5.2引用2-5.1指针2-5.1.1指针的概念所谓指针是一个存储单元的地址值,用来存放地址(即指针)的变量也称指针变量。在上下文意义明确的情况下,常常将指针变量也简称为指针。指针变量和普通变量一样占有一定的存储空间,但它与普通变量的区别在于指针变量的存储空间中存放的不是普通的数据,而是一个地址值——指针。2-5.1.1.1指针的声明指针是一个变量,必须先声明后使用。指针声明的一般形式如下:数据类型*标识符;注意:指针声明语句中的数据类型是指针变量所指向的变量的数据类型,即指针变量所指向的存储单元中存储数据的数据类型,并不是指针
2、变量本身的类型,任一指针变量本身数据值的类型都是unsignedlongint。2-5.1.1.2指针变量运算符1.取地址运算符&该运算符表示对“&”后面的变量进行取地址运算。指针变量是用来存放变量地址的变量,因此可以通过取地址运算符&,将某一变量的地址赋值给指针变量。例如:inta=2,*p;p=&a;【例2-5.1】变量地址及取地址运算符的使用。#includevoidmain(){inti=1;cout<<"i="<3、7C2.间接访问运算符*该运算符也称“指针运算符”或“取内容运算符”,它后面必须是一个指针变量,表示访问该指针变量所指向的变量,即访问指针所指向的存储单元的内容。例如:inti=1,*p=&i;cout<<*p;注意:(1)不要将间接访问运算符“*”与声明指针时的“*”混为一谈。指针声明时的“*”是指针变量声明的标示,可以称为“指针指示符”,而间接访问运算符“*”用来访问指针所指向的变量。(2)通过以上的说明可以看出,*运算和&运算互为逆运算。【例2-5.2】指针的各种表示形式及其含义。#includevoidmain(){inta=104、,*p;p=&a;*p=15;cout<<"a="<voidmain(){inti=1,*p1=&i;int*p2=p1;cout<<"p1="<<5、p1<<",p2="<6、的存储空间,具有一个地址,这个地址也可以利用指针来保存。因此,可以声明一个指针来指向它,这个指针称为指向指针的指针,即二级指针。二级指针是指针变量的指针,使用二级指针可以实现更为复杂的功能。声明二级指针的格式为:数据类型**标识符【例2-5.4】二级指针的使用。#includevoidmain(){inti;int*p1=&i,**p2=&p1;//声明二级指针p2i=1;cout<<"i="<7、8、de
3、7C2.间接访问运算符*该运算符也称“指针运算符”或“取内容运算符”,它后面必须是一个指针变量,表示访问该指针变量所指向的变量,即访问指针所指向的存储单元的内容。例如:inti=1,*p=&i;cout<<*p;注意:(1)不要将间接访问运算符“*”与声明指针时的“*”混为一谈。指针声明时的“*”是指针变量声明的标示,可以称为“指针指示符”,而间接访问运算符“*”用来访问指针所指向的变量。(2)通过以上的说明可以看出,*运算和&运算互为逆运算。【例2-5.2】指针的各种表示形式及其含义。#includevoidmain(){inta=10
4、,*p;p=&a;*p=15;cout<<"a="<voidmain(){inti=1,*p1=&i;int*p2=p1;cout<<"p1="<<
5、p1<<",p2="<6、的存储空间,具有一个地址,这个地址也可以利用指针来保存。因此,可以声明一个指针来指向它,这个指针称为指向指针的指针,即二级指针。二级指针是指针变量的指针,使用二级指针可以实现更为复杂的功能。声明二级指针的格式为:数据类型**标识符【例2-5.4】二级指针的使用。#includevoidmain(){inti;int*p1=&i,**p2=&p1;//声明二级指针p2i=1;cout<<"i="<7、8、de
6、的存储空间,具有一个地址,这个地址也可以利用指针来保存。因此,可以声明一个指针来指向它,这个指针称为指向指针的指针,即二级指针。二级指针是指针变量的指针,使用二级指针可以实现更为复杂的功能。声明二级指针的格式为:数据类型**标识符【例2-5.4】二级指针的使用。#includevoidmain(){inti;int*p1=&i,**p2=&p1;//声明二级指针p2i=1;cout<<"i="<7、8、de
7、8、de
8、de
此文档下载收益归作者所有