- 4
- 0
- 约1.01万字
- 约 56页
- 2019-04-30 发布于江苏
- 举报
第 章 数组 概述 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(目的字符数组,源字符串);作用:将源字符串连接到目的字符数组后面。函数返回值:目的字符数组的地址。注意:目的
您可能关注的文档
- 2018-2019上学期期中考试分析.ppt
- 2018-2019学年北师大版必修二-1.1.1简单旋转体-课件(18张).ppt
- 2018-2019学年北师大版必修二-1.1简单几何体-课件(44张).pptx
- 2018-2019学年北师大版选修1-1-2.1.2椭圆的简单性质-课件(24张).pptx
- 2018-2019学年北师大版选修1-1-3.2.2导数的几何意义-课件-(共13张).ppt
- 2018-2019学年北师大版选修2-1-3.1.1椭圆及其标准方程-课件(44张).ppt
- 2018-2019学年北师大版选修2-1-3.4.3直线与圆锥曲线的交点-课件(16张).ppt
- 2018-2019学年度3.2制取氧气.ppt
- 2018-2019学年高一数学人教版必修二课件:1.1-空间几何体的结构-1.1.2.ppt
- 2018-2019学年高中地理新课标导学:必修一-第3章-第1节-自然界的水循环-课件(人教版)(50张PPT).ppt
原创力文档

文档评论(0)