第14次课 第3 章数据类型 指针与引用.docx
- 文档编号:2131036
- 上传时间:2023-05-02
- 格式:DOCX
- 页数:11
- 大小:41.86KB
第14次课 第3 章数据类型 指针与引用.docx
《第14次课 第3 章数据类型 指针与引用.docx》由会员分享,可在线阅读,更多相关《第14次课 第3 章数据类型 指针与引用.docx(11页珍藏版)》请在冰点文库上搜索。
第14次课第3章数据类型指针与引用
重庆邮电大学教案
【面向过程程序设计】
周次
第12周第14次课
章节名称
第3章数据类型—指针与引用
授课方式
理论课(√)实验课()集中上机()
教学时数
2学时
教学目的及要求
理解内存地址的概念;
理解指针的概念;
掌握指针访问数组元素方法;
掌握引用的概念及使用方式;
教学内容提要
时间分配(分钟)
内存地址解释:
内存比如成居民居住的房屋,假设房屋都是方格子大小,每个房屋都有门牌号,内存地址就是这个门牌号,知道这个门牌号就可以把信件邮寄到这个居民。
内存空间的访问方式:
通过变量名访问:
变量名就代表着某一内存空间,通过这个变量名直接存取内存空间的值。
例:
inta;
a=3;
cout< 通过地址访问: 得到内存空间地址,直接通过地址对内存空间进行存取。 如何得到地址? 地址运算符: &例: intvar;则&var表示变量var在内存中的起始地址 指针变量的概念: 概念指针: 内存地址,用于间接访问内存单元指针变量: 用于存放地址的变量 指针变量声明例: inti;int*i_pointer=&i; i_pointer指向整型变量的指针 引用数据: 例1: i=3;例2: *i_pointer=3; 指针变量的初始化: 语法形式数据类型*指针名=初始地址; 例: inta; int*pa=&a; int*qa=pa; 注意事项用变量地址作为初值时,该变量必须在指针初始化之前已说明过,且变量类型应与指针类型一致。 可以用一个已赋初值的指针去初始化另一个指针变量。 指针变量的赋值运算: 指针名=地址“地址”中存放的数据类型与指针类型必须相符。 向指针变量赋的值必须是地址常量或变量,不能是普通整数。 但可以赋值为整数0,表示空指针。 指针的类型是它所指向变量的类型,而不是指针本身数据值的类型,任何一个指针本身的数据值都是unsignedlongint型。 允许声明指向void类型的指针。 该指针可以被赋予任何类型对象的地址。 例: void*general; 指针的声明、赋值与使用: #include int*i_pointer;//声明int型指针i_pointerinti;//声明int型数ii_pointer=&i;//取i的地址赋给i_pointeri=10;//int型数赋初值cout<<"Outputinti="< void类型指针的使用: voidvobject;//错,不能声明void类型的变量void*pv;//对,可以声明void类型的指针int*pint; inti;intmain(){pv=&i;//void类型指针指向整型变量//void指针赋值给int指针需要类型强制转换: pint=(int*)pv;} 指向常量的指针: 不能通过指针来改变所指对象的值,但指针本身可以改变,可以指向另外的对象。 例1char*name1="John";//name1是一般指针*name1='A';//编译正确,运行出错例2constchar*name1="John";//指向常量的指针chars[]="abc";name1=s;//正确,name1本身的值可以改变*name1='1';//编译时指出错误 指针类型的常量: 若声明指针常量,则指针本身的值不能被改变。 例: char*constname2="John";name2="abc";//错误,指针常量值不能改变 #include usingnamespacestd; //------------------------------------- voidmain() { inta=78,c=18; constint*ip=&a; constint*consticp=&c; a=60;c=28; cout<<"ip=>"<<*ip< cout<<"icp=>"<<*icp< }//============================== 指针变量的算术运算: 指针与整数的加减运算指针p加上或减去n,其意义是指针当前指向位置的前方或后方第n个数据的地址。 这种运算的结果值取决于指针指向的数据类型。 指针加一,减一运算指向下一个或前一个数据。 例如: y=(*px)++相当于y=*(px++) (*和++优先级相同,自右向左运算) 指针变量的关系运算: 关系运算指向相同类型数据的指针之间可以进行各种关系运算。 指向不同数据类型的指针,以及指针与一般整数变量之间的关系运算是无意义的。 指针可以和零之间进行等于或不等于的关系运算。 例如: p==0或p! =0赋值运算向指针变量赋的值必须是地址常量或变量,不能是普通整数。 但可以赋值为整数0,表示空指针。 指向数组元素的指针: 声明与赋值例: inta[10],*pa;pa=&a[0];或pa=a;通过指针引用数组元素经过上述声明及赋值后: *pa就是a[0],*(pa+1)就是a[1],...,*(pa+i)就是a[i].
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第14次课 第3 章数据类型 指针与引用 14 数据类型 指针 引用