已阅读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年农村房产交易合同样本
- 2025年环境科技产业环境保护与减碳技术创新解决方案研究报告及未来发展趋势预测
- 2025年医疗健康行业远程医疗服务用户体验研究报告及未来发展趋势预测
- 2025年智能制造行业标准规范解读报告
- 2025年人力资源行业数字化人才管理与员工激励策略研究报告及未来发展趋势预测
- 2025年体验经济行业消费者体验设计创新研究报告及未来发展趋势预测
- 2025年医疗行业大数据应用推动医疗服务新升级报告
- 2025年医疗美容行业抗衰老技术应用研究报告及未来发展趋势预测
- 2025年人工智能产业大数据应用与智能算法发展研究报告及未来发展趋势预测
- 商业合同审批及档案管理方案
- 低温液体泵培训课件
- 国企员工违法违纪案件警示教育心得体会
- 劳务派遣劳务外包服务方案(技术方案)
- 2025中国单机游戏市场现状报告
- 诉讼案件备案管理制度
- 《HTML5+CSS3 Web开发案例教程》课件-第11章 经典DIV+CSS网页布局方法
- 手工刺绣教学课件
- 山东省高级农艺师考试试题及答案
- 社区村委会物业管理制度
- 股东退出减资协议书
- 2024-2025学年高一下学期《人生拍卖体验官》主题班会课件
评论
0/150
提交评论