C++课件 第六章 数组.ppt

  1. 1、本文档共56页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C课件第六章数组

第 章 数组 概述 C++数据类型: ·基本类(简单类)——字符型/整型/实型/枚举型 ·构造类(组合类)——数组/结构体/共用体 ·指针类 ·空类型(void) 基本类型——单个出现的变量,每个变量可以代表一个确定的数据(变量值),且具有一定属性。如 static int x,y;但变量间不存在确定的相互关系。 构造类型——由基本类型按一定规则组成。其中数组 :由一组有序数据(数组元素)组成,这些数据保存在连续的内存空间,每个元素具有相同类型,因此占有相同大小的存储单元,具有统一数组名,用下标确定其顺序,但可以取各自值。 数组定义 同变量一样,数组也必须先定义,后使用。 定义内容: ·数组名 :必须是合法标示符 ·类型(存储属性/数据类型) ·大小(维数/元素个数) 定义的一般形式: 存储属性 数据类型 数组名[常量表达式][常量表达式]… 常量表达式:常量或符号常量,其值必须为正,不能为变量 !如:int n=5;int a[n];这样定义是错误的,如下为正确的:int a[10],b[5][4]; char name[8], ch[2][3]; static float x[8*2+1], table[2][3][4]; #define NUM 40 int a[NUM],b[NUM+2]; 数组的初始化 可以在定义数组的同时赋初值,如: 省略元素值,如: 静态/外部数组未初始化,默认初值是0(数值)或‘\0’(字符). auto数组未初始化,初值为不可预料的数。 数组元素的引用 只能逐个引用数组元素,不能一次引用整个数组 .引用数组元素要注意下标不要越界(编译程序不检查是否“越界”).引用示例 : a[2][3] a[2-1][2*3-1] a[x](x为整型表达式或变量) int a[5]; for (i=0;i5;i++) (注意下标不要越界) couta[i]; 数组作为函数参数 用数组元素作函数实参 此时可把数组元素看作普通变量(单向值传递). 特点:主调函数中的实参——数组元素(带下标) 被调函数中的形参——普通变量 调用结果:形参值的变化对实参值无影响(二者分占不同内存) 数组作为函数参数 用数组名作函数实参 若int a[6];则数组名a表示数组的起始地址. 此时,是把实参数组的起始地址“传给”形参数组 . 本质:对应的数组元素(不是形参与实参)共享同一内存单元(所谓“双向的地址传送”). 特点:主调函数中的实参——数组名(不带下标) 被调函数中的形参——数组名或数组定义式 调用结果:两数组同下标者为同值 . 字符数组和字符串 字符数组的初始化 char c[5]={‘a’,’b’,’c’}; c[3]和c[4]自动定为‘\0’ 字符串在内存中以字符数组存放,因此可以用字符串直接初始化字符数组. char c[5]=“abc”; 思考:char c[ ]=“abc”; 数组c的数组长度? 字符串以字符串结束标志‘\0’(即空字符)结束(可以思考‘A’和“A”在内存中存放的区别),因此 char c[ ]=“abc”;等价于 char c[ ]={‘a’,’b’,’c’,’\0’);既数组c的数组长度为4,当然char c[5]=“abc”;的数组长度仍为5. 将一个字符串直接给一个字符数组只能够出现在初始化中,不能够出现在赋值语句中!也不能把一个字符数组直接赋值给另一个字符数组,如:char c[5],d[5];c=“abc”;d=c;是错误的! 要使用string.h的函数 strcpy(to字符数组1,from字符数组2) 如:strcpy(c,”abc”); strcpy(d,c); 字符串处理函数 【例】 以下程序的输出结果是 。 #include “string.h” void main( ) { char s[10],sp[ ]=”HELLO”; strcpy(s,sp); s[0]=’h’; s[6]=’!’; couts; } \0 \0 \0 \0 \0 O L L E H \0 \0 \0 \0 \0 O L L E h \0 \0 \0 ! \0 O L L E h hELLO strcat( ) 字符串连接函数 形式:strcat(目的字符数组,源字符串); 作用:将源字符串连接到目的字符数组后面。 函数返回值:目的字符数组的地址。 注意:目的

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档