




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关于变量的讨论(一),关于变量的讨论(1),若不设定初始值,变量“初始值”是?,2,#includeusingnamespacestd;intmain()intnum;coutnumendl;return0;/task-1,3,如果变量自定义后没有赋值,则变量的内存单元中的值是一个随机的数值,在不同的机器上、在不同的环境下,单元的内容是不同的。,关于变量的讨论(2),变量为什么要指定类型?类型信息,用来做什么?不同类型,差别是什么?,4,#includeusingnamespacestd;intmain()inta=2;couta=aendl;couta/4=a/4endl;/结果很奇怪!return0;/task-9.1,变量为什么要指定类型?类型信息,用来做什么?不同类型,差别是什么?,5,#includeusingnamespacestd;intmain()floata=2;couta=aendl;couta/4=a/4endl;/这次结果正确了!return0;/task-9.2,关于变量的讨论(2),关于变量的讨论(2),变量为什么要指定类型?类型信息,用来做什么?不同类型,差别是什么?,6,类型的用途告诉计算机如何操作数据。即:类型“暗示”了运算的操作办法。不同类型的数值,它们参与运算的“操作规则”是不同的。例如:整数相加,需要最末一位(个位)对齐之后进行;而小数相加,则需要的是小数点对齐!还有,对于字符串类型而言,对它们最有意义的“加法操作”,显然应该是将两个串拼接起来!这完全与数的加法有天壤之别!,7,#include#include/字符串类型#include/复数类型usingnamespacestd;intmain()stringstr1=TsinghuaUniversity,;stringstr2=DepartmentofComputer;coutc1(3,4),c2(4,5);/下学期的C+课程再详细解释coutc1=c1endl;coutc2=c2endl;coutc1+c2=c1+c2endl;coutc1*c2=c1*c2endl;return0;/task-11,8,而指针类型的加减运算,更是遵循一种截然不同的运算规则!(见前面的例子),9,类型真的好重要啊,关于变量的讨论(3),变量存储在哪里变量内存单元地址,10,#includeusingnamespacestd;intmain()intn;floatf;doubled=1.23;/0.0;charc=*;coutaddressofn:/task-6,11,doubeld=0.0;,12,变量内存单元地址,简称变量地址,关于变量的讨论(4),变量地址(内存单元地址)是什么类型?,13,#includeusingnamespacestd;intmain()intn=12;floatf=3.4f;doubled=56.78;/0.0;charc=9;coutaddressofn:,变量地址,如何用新的变量来保存?即:应该定义什么类型的变量,才能保存“变量地址”?,这只是输出变量n,f,d,c的地址,并非保存变量地址!(其中,通常称为:var是TYPE类型的指针变量。TYPE类型的变量,其“地址”值,只能赋值给TYPE类型所对应的指针类型变量,即:用TYPE*定义的变量!,这是输出变量pn,pf,pd,pc的内存单元值,15,这是设置doubled=0.0;时的程序输出。(task-07.1),coutpn:pn,addressofpn:,若将代码修改为:,则新版本程序的输出结果为:(task-07.2),#includeusingnamespacestd;intmain()/同前。略。*pn=999;*pf=888;*pd=777;*pc=A;,关于变量的讨论(5),对变量地址对应的内存单元的读/写操作,16,对pn,pf,pd,pc中存储的地址值所对应的内存单元进行赋值操作,变量n的值,n,0X22FF44,0X22FF44,pn,0X22FF30,999,n,0X22FF44,0X22FF44,pn,0X22FF30,地址单元名称,coutn:n*pn=*pnendl;coutf:f*pf=*pfendl;coutd:d*pd=*pdendl;coutc:c*pc=*pcendl;return0;/task-8.1,关于变量的讨论(5),对变量地址对应的内存单元的读/写操作,17,从pn,pf,pd,pc中存储的地址值所对应的内存单元中,读取内存单元的内容,999,n,0X22FF44,0X22FF44,pn,0X22FF30,18,999,n,0X22FF44,0X22FF44,pn,0X22FF30,地址单元名称,19,999,n,0X22FF44,0X22FF44,pn,0X22FF30,因为pn变量的值“正好等于”变量n的内存地址,所以形象地称变量pn是“指向”变量n的一个“指针”,简称为“指针”变量pn、指针pn。图示为:,0X2ED230,0X22FF44,Pos_idx_3,可能有多个内存单元的值是同一个内存单元的地址(如pn单元和Pos_idx_3单元),即同一单元可能会有多个指针变量“指向”它。但一个指针变量,只能指向一个内存地址。,pn,999,999,0X22FF44,0X22FF44,0X22FF30,0X2ED230,0X22FF30,100,0X22FF40,0X22FF3C,0X2ED230,3.1425,0X22FF2C,960.123,0X2ED22C,0X2ED22C,0X22FF48,0X2ED228,89.6,请画出图中的所有指针箭头,999,0X24FF47,0X25FF91,100,0X27F14F,3.1425,960.123,0,0X22FF44,0X213D44,0X22FF44,0X24FF47,0X25FF91,0X27F14F,另一个示例,22,:将指定内存单元中存放的数值取出来(输出或赋给另一个变量),该内存单元的地址是由变量pn的值确定的。,小结,#includeusingnamespacestd;intmain()intn1=12,n2=87;charc1=9,c2=B;coutn1:value=n1address=*(pc-1);/runtimevalu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省南京市、盐城市2025届高三下学期3月一模试题 物理 含解析
- 高考数学个体化学习策略与试题及答案
- 行政法学对经济社会影响试题及答案
- 计算机科学核心能力考题及答案
- 网络管理员个人技能试题及答案总结
- 行政法学与技术进步的关系试题及答案
- 火灾应急预案个人职责(3篇)
- 法学概论社会变迁对法制建设的影响试题及答案
- 教育机构防火灾应急预案(3篇)
- 网络性能监控技术试题及答案
- 基底节脑出血护理查房
- 2024年第三届浙江技能大赛(农机修理赛项)理论考试题库(含答案)
- 畲族非遗文化课程设计
- 《煤矿防治水细则》全文
- 发动机大修免责协议书范本范本
- 文化强国课件
- 医学教材 瓣环起源的室性心律失常的心电图特征b
- 农作物植保员技能竞赛理论考试题库500题(含答案)
- 《公共政策学(第二版)》 课件第8章 政策创新与扩散
- 课件6:环控电控柜主要部件-马达保护器
- 小学生偏旁部首所表示的意义
评论
0/150
提交评论