- 1、本文档共182页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C程序设计PPT电子课件教案-第六章指针参考
C++程序设计 第六章 指针 6.0 序:指针的优势 序:指针的优势 有效的表示复杂的数据结构 能动态的分配内存 更为方便的使用字符串 有效而方便的使用数组 调用函数时能得到多个返回值 能直接处理内存地址 地址和指针 内存单元与地址 内存单元是以字节为单位,每个字节都有一个编号(即“地址”)。如果将内存比作一个旅馆,内存单元就好比“房间号”,而实体则好比“旅客”。这些“旅客”(实体)中,有单人型(char),还有团体型(数组等)。每个“实体”占用的内存单元是不同的。如: char a;int b;float c;int d[3];int max( ) 内存单元与地址 计算机的内存储器被分割成许多相同的连续存储单元,相应每个存储单元都有一个唯一的编号,称之为地址。 假设程序里定义了3个变量i,j,k,编译时系统分配了2000和2001两个字节给变量i, 2002和2003给变量j, 2004和2005给变量k,如右图所示。在表内,变量的标识符与存储地址一一对应,运行程序时,对变量值的存取都是通过地址进行的。 内存单元与地址 变量的读取方式 方式: 直接访问:按变量的地址进行存取 间接访问:将变量的地址存放在另一个变量中的方式 图示: 直接访问: 实体地址的表示 实体地址的表示: 实体地址表示法1:直接访问(实体名) 普通变量a,b,c —— a,b,c 数组d[3] —— d(数组名), d[0],d[1],d[2] 对二维数组,可用单下标法表示每行首地址。 如 对char x[3][4],可用x[0]、x[1]、x[2]分别表示其第 一、二、三行的首地址。 函数max( ) —— max(函数名) “入口地址” 取地址运算符(适用于普通变量或数组元素) 实体地址表示法2:间接访问(指针) 适合于地址运算(加减等) 指针 指针就是变量、数组、函数等的存储地址。 指针变量 变量的指针和指向变量的指针变量 指针变量的定义: 指针变量的引用: 指针变量的赋值: 指针变量的示例: 变量与指针 变量的指针就是变量的地址 用来存放变量地址的变量是指针变量 指针变量用来指向另一个变量 为了表示指针变量和他所指向的变量之间的关系,在C++中用“*”符号表示指向。 指针变量的定义 6.2.1 指针变量的定义 指针变量的定义 请看以下变量声明语句 int a,*p1; char b,*p2; a,b 普通变量(存放某个数值或字符) p1,p2 指针变量(存放某个实体的地址) 指针变量的定义 指针的存放(三步曲) ①定一个以普通变量,如:int x ②定义一个指针变量,如:int *px ③将指针变量有所指向,如:px=x 图示: 指针变量的定义 指针变量的定义: 格式:数据类型 *指针变量名 注释: ①指针变量所占空间:一个机器字长(2B) ②指针变量只能存放地址 如:p1=100 × 指针变量的引用 对指针变量施加*运算,则代表取指针所指向的单元的内容。这里,*p与变量i是等价的。 区分:*运算符在不同场合的作用,编译器能够根据上下文环境判别*的作用。 int a,b,c; int * p; (*表示定义指针) p = a; (将变量a的地址存放到指针变量p中) *p = 100; (*表示指针运算符,将100赋值给*p,即指针所指向的实体) c = a * b; (*表示乘法运算符) 指针变量的引用 指针变量的引用: 两个运算符: ①——取地址运算符 ②*——取地址里的内容 注: ① ,*同属单目运算符,结合性自右至左 如: *p→ (*p) * x → * ( x) ② ,*为一对逆运算 如:若 int a, *p; p=a; 则 *p = a = p *a = a = *p 注意——不同的*p 以下程序中哪些语句是错误的? main() { int a,p,*p; a=3; p=3; /*或者 p=a;*/ p=a; *p=a; /*或者*p=3*/ } 有关*p的小结 变量声明时,*p表示定义了一个用来存放变量地址而非数据(数值、字符等)的指针变量。 程序中引用时,*p表示取指针变量p所指变量的值。 指针变量的
您可能关注的文档
- 2017新版部编本二年级上册语文《语文园地3-7》原创教学课件参考.ppt
- 2017新版部编本二年级上册语文识字2《树之歌》教学课件设计课件参考.ppt
- 2017新版部编本二年级上册语文识字3《拍手歌》名师课件(第一课时)参考.ppt
- 2017新版部编本二年级上册语文课文《雾》-参考.ppt
- 2017新版部编本二年级上册语文识字3《拍手歌》参考.ppt
- 2017新版部编版一年级语文下册语文园地七课件参考.ppt
- 2017新版部编本二年级上册语文识字3《拍手歌》2参考.ppt
- 2017新苏教版一年级下册语文《乌鸦喝水》课件参考.ppt
- 2017新版部编本二年级上册语文识字2《树之歌》参考.ppt
- 2017新版静夜思参考.ppt
- 福莱特玻璃集团股份有限公司海外监管公告 - 福莱特玻璃集团股份有限公司2024年度环境、社会及管治报告.pdf
- 广哈通信:2024年度环境、社会及治理(ESG)报告.pdf
- 招商证券股份有限公司招商证券2024年度环境、社会及管治报告.pdf
- 宏信建设发展有限公司2024 可持续发展暨环境、社会及管治(ESG)报告.pdf
- 品创控股有限公司环境、社会及管治报告 2024.pdf
- 中信建投证券股份有限公司2024可持续发展暨环境、社会及管治报告.pdf
- 洛阳栾川钼业集团股份有限公司环境、社会及管治报告.pdf
- 361度国际有限公司二零二四年环境、社会及管治报告.pdf
- 中国神华能源股份有限公司2024年度环境、社会及管治报告.pdf
- 广西能源:2024年环境、社会及治理(ESG)报告.pdf
最近下载
- 矿用隔爆兼本安型控制器工艺流程图.doc VIP
- 政治学概论政治学概论编写组05政党与政党制度.ppt VIP
- 《乡村旅游规划与实践》课件——项目七 乡村旅游商品开发与设计.pptx VIP
- 国家义务教育质量监测心理健康测试题.pdf VIP
- 《分数加法和减法》单元整体设计 -2023-2024学年五年级下册数学人教版.doc VIP
- 《0~3岁婴幼儿保育与教育》PPT教学课件(全).pptx VIP
- 小学科学实验课学生合作学习策略与互动模式研究教学研究课题报告.docx
- 测绘工程管理与法律法规 测绘违法案例60讲 5测绘违法案例五.ppt
- 第六届中国国际“互联网+”大学生创新创业大赛项目计划书【模板】.pdf
- 政治学05 政党与政党制度.ppt VIP
文档评论(0)