- 1、本文档共32页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数组与指针的常见问题 性格决定命运, 专注成就人生 1-* 北京源智天下科技有限公司 联系方式: 联系方式: 北京源智天下科技有限公司 第8讲 数组与指针 演讲人:马玉军 e-mail:jtclass@126.com 课程安排 数组的理解与操作 指针 数组与指针 二维数组与多维数组 数组与指针编程实例 数组与指针的常见问题 数组的理解与操作 数组实际上就是一组相同数据类型变量。如果一个数组中的一个变量也是一个数组,就构成了二维数组。同样的方法,可以成多维数组。在使用数组以前需要建立一个数组。 什么是数组 可以用一个实例来理解数组。假设在一个程序中要存储100个人的年龄,可以写成下面代码来定义100个整型变量。 int age1=12; int age2=18; int age3=15; ……… int age100=21; 数组的理解与操作 如果这样编写程序,程序中产生大量相似的语句,在调用变量时,变量名没有统一的规则。可以将所有同类的数据存放在一个数组变量中。所有人的年龄可以建立一个数组,然后用编号来表示数组的一个变量。可以用下面的代码来表示这些数据。 int a[100] age[0]=12; age[1]=18; age[2]=15; ……… age[99]=21; 这样就可以用一个变量名和一个下标来表示数组中的一个变量。例如age[0]表示数组中的第一个变量,age[1]表示数组中的第二个变量。age是这个数组的变量名,后面的数字是这个数组的下标,下标需要使用中括号括起来。例如下面的程序,就是定义一个10个整型变量的数组,然后用循环语句对数组赋值10~19。再用循环语句输出这些数据变量。 数组的理解与操作 数组的理解与操作 在使用数组时,需要注意下面这些下标和数据类型的问题。 (1)在定义数组时,已经定义了数组的数据类型,在访问时需要按照数组的数据类型进行访问和赋值。 (2)数组的下标是从0开始的向后排列整数,不能是其他的下标。第一个下标是0而不是1。而下标n表示第n+1个变量。 (3)定义数组a[n]以后,有n个元素,但是没有a[n]这个元素。访问不存在的数组变量时,程序就会发生溢出错误。 注意:溢出指的程序中的变量不够存储空间,或者访问了不存在的变量,从而使程序发生错误。 在本质上,数组是内存上一组同类信息列出的一个表。假设上面例子中的数组a[10]是从内存编号为1000的存储单元开始存储的,数组的内容和值可用表8.1表示。 数组的理解与操作 数组的定义指的是在内存中开辟一块存储空间,生成一个空数组。数组的定义与变量的定义相似,需要指定数据类型的变量的多少,变量数目用中括号括起来。例如下面的代码就是定义不同的数组。 01 int a[10]; /*定义10个变量的整型数组。*/ 02 float f[20]; /*定义有20个变量的浮点型数组。*/ 03 char s[5]; /*定义有5个变量的字符型数组。*/ 数组的访问很简单。用数组变量的名称与下标就可以访问这个数组。例如下面的代码,是输出数组元素的值和对数组进行赋值。 01 printf(“%d”,a[2]); /*输出数组a中第3个元素的值。*/ 02 a[3]=5; /*对数组中的第4个变量进行赋值。*/ 数组的理解与操作 指针 指针是一种特殊的数据类型,用来存储一个变量的内容地址。通过一个指针,可以访问这个指针的变量。在使用指针时,需要考虑到变量的存储关系 。 程序中的变量都是以字节的形式存储在内存单元中的,这些内存单元都有一个编号。这个编号就是程序中的指针。如表8.2所示,是一个程序中的内存地址和变量值的关系。在这个内存区域中,每一个变量都有一个内存存储单元编号,这个编号就是变量的指针。通过这个指针可以访问这个变量的值。 指针 指针操作符 指针操作符有*与两个,分别实现取变量和取地址的操作。程序中就是通过这两个操作符实现指针的定义与访问的。 “”可以实现取一个变量的地址的功能。取出的变量地址可能是一个很复杂的数据类型,但是操作时并不关心数值的多少,只需要保存到一个变量上面。 “*”实现取一个指针所指向的变量的功能。例如下面的代码,就是通过一个变量的指针来访问变量。 指针 指针的定义与访问 指针虽然是一种特殊类型,但定义指针变量时,需要考虑到这个指针所指向变量的数据类型。定义指针的方法是用定义变量的方法,再指针类型名称前面加一个“*”。例如下面的代码是指向不同数据类型的指针。 01 int *p1; /*定义一个指向整型变量的指针。*/ 02 char *p2; /*定义指向一个字符型变量的指针。*/ 03 float *p3; /*定义一个指向浮点型变量的指针。*/ 一个变量是用“
您可能关注的文档
- 第三章-扭转变形.ppt
- OX公牛陈列指导-s.ppt
- 存在问题-储蓄.ppt
- 第2章直流-直流变换电路.ppt
- 人教版新课标7下Unit 8 I'd like some noodles.Self check.ppt
- 新能源发电之地热能.ppt
- 第二章__螺旋传动1.ppt
- 机械设计第十一章(2).ppt
- 05-6有机物代谢和运输.ppt
- 17、麻醉深度监测(孙明贤)(1).ppt
- 2025年新人教PEP版英语三年级下册整册课件 (3).pptx
- 2024 年 12 月大学英语六级考试真题及答案(第 1 套).docx
- 2024 年 12 月大学英语六级考试真题及答案(第 2 套).docx
- 2024年12月大学英语六级考试真题及答案(第3套).docx
- 2024年12月大学英语四级考试真题及答案(第3套).docx
- 2025年新人教PEP版英语三年级下册整册教学课件 (2).pptx
- 2025年新人教PEP版英语三年级下册整册教学课件.pptx
- 2025年新人教PEP版英语三年级下册整册课件 (2).pptx
- 2025年新人教PEP版英语三年级下册整册课件.pptx
- 2025年新人教PEP版英语三年级下册整册教学课件 (3).pptx
最近下载
- 煤矿顶板管理培训教案.pptx VIP
- 2024-2025学年小学信息技术(信息科技)六年级下册人教版教学设计合集.docx
- JT∕T 1218.1-2018- 城市轨道交通运营设备维修与更新技术规范 第1部分:总则.pdf
- 先张法预应力混凝土空心方桩基础技术规程.pdf
- 《幼儿园教育活动的设计与实施》课程标准.docx
- 第六节教学工作基本环节课件.ppt
- 2020年2020春部编版二年级道德与法治下册教案(全册含计划).pdf VIP
- 标准图集-轻型保温装饰一体板构造图集((EPS、STP、岩棉装饰一体板).pdf VIP
- 军事理论 中国古代军事思想.ppt
- 关于人大工作报告审议个人发言.docx VIP
文档评论(0)