结构体、共用体和枚举类型_第1页
结构体、共用体和枚举类型_第2页
结构体、共用体和枚举类型_第3页
结构体、共用体和枚举类型_第4页
结构体、共用体和枚举类型_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、南京航空航天大学信息学院计算机基础教研室 制作(版权所有) 第10章 结构体、共用体和枚举类型 第10章 本章要点 v了解结构了解结构 v了解关于结构的各种操作了解关于结构的各种操作 v理解怎样使用结构操作数据理解怎样使用结构操作数据 v理解结构和函数之间的关系、掌握结构作理解结构和函数之间的关系、掌握结构作 为参数传递与返回结构的函数方法为参数传递与返回结构的函数方法 v理解结构中数组的用法理解结构中数组的用法 v理解怎样创建结构数组理解怎样创建结构数组 v了解共用体的特点了解共用体的特点 v了解枚举类型了解枚举类型 第10章 问题的提出 学号学号 姓名姓名 年龄年龄 性别性别 成绩成绩1

2、成绩成绩2 平均成绩平均成绩 1 aa 19 m 80 90 90 2 bb 18 f 78 70 73 3 cc 17 m 81 75 79 4 dd 18 f 80 60 75 5 ee 19 m 76 83 83 每行的数据类型不相同,如何表示此二维数据?每行的数据类型不相同,如何表示此二维数据? 如何交换两行值?如何交换两行值? 能否将一行看成一个整体?能否将一行看成一个整体? 定义一种类型定义一种类型,把不同的数据作为一个整体来处理,把不同的数据作为一个整体来处理结构体结构体 第10章 数据类型 数组数组 - 有相同类型的数据集合有相同类型的数据集合 结构体结构体- 不同类型的数据集

3、合不同类型的数据集合 构造数据类型构造数据类型: 由简单数据类型(由简单数据类型(int、float、 char)组合而组合而 成的(有机整体)数据类型。成的(有机整体)数据类型。 基本类型基本类型 : 整型整型 、实型、实型 、字符型、字符型. 第10章 主要内容 v结构体类型的定义结构体类型的定义 v结构体类型的变量和结构体类型的变量和结构体类型结构体类型数组数组 v共用共用体体 v枚举类型枚举类型 第10章 结构体类型的定义 定义了一种新的数据类型定义了一种新的数据类型 struct 结构体名或结构体名结构体名或结构体名 struct 结构体名结构体名 类型标识符类型标识符 成员名成员名

4、1 类型标识符类型标识符 成员名成员名2 . 类型标识符类型标识符 成员名成员名n ; 可为简单类型可为简单类型 也可为构造类型也可为构造类型 关键字关键字 不能少不能少 成员 列表 第10章 例 v以学生档案为例,假设包括如下数据项以学生档案为例,假设包括如下数据项 学号(学号(num):):整型整型 姓名(姓名(name):):字符串字符串 性别(性别(sex):):字符型字符型 出生日期(出生日期(birthday):):date结构体结构体 四门课成绩(四门课成绩(sc):):一维实型数组一维实型数组 第10章 例 依此格式定义上例依此格式定义上例 struct date int ye

5、ar ,month ,day; struct student int num; char name12; char sex; date birthday; float sc4; ; 如如struct date 没事先说明可没事先说明可 写成:写成: struct student int num ; char name12; char sex; struct int year; int month; int day; birthday; float sc4; ; 第10章 例 例例1 1:一组相关变量:一组相关变量 定义结构体类型定义结构体类型 新数据类型新数据类型 结构体成员结构体成员 int

6、 month ; int day ; int year ; struct date int year ; int month ; int day ; ; char name30; struct wage float salary ; char name30; float salary ; ;不同数据类型的成员不同数据类型的成员 例例2 2:一组相关变量:一组相关变量 定义结构体类型定义结构体类型 第10章 说明 (1) (1) 结构体类型是一种构造数据类型结构体类型是一种构造数据类型,它与,它与int, char,float等系统定义的基本数据类型具有同等地位,等系统定义的基本数据类型具有同等

7、地位, 是由用户自行定义的。是由用户自行定义的。 (2) (2) 结构体类型不结构体类型不分配任何存储空间。分配任何存储空间。 相应结构体类型的相应结构体类型的变量、数组及动态开辟的变量、数组及动态开辟的 存储单元存储单元占存储空间。占存储空间。 构造的数据类型可以用来定义变量构造的数据类型可以用来定义变量 第10章 结构体类型的变量和数组的定义方法 先定义结构体类型,再单独进行定义先定义结构体类型,再单独进行定义 在定义类型的同时定义结构体变量在定义类型的同时定义结构体变量 在定义一个无名结构体类型的同时,直接进行定义在定义一个无名结构体类型的同时,直接进行定义 第10章 方法一 struc

8、t 结构体名结构体名 成员列表成员列表; struct 结构体名结构体名 变量名列表;变量名列表; 或或 结构体名结构体名 变量名列表变量名列表 第10章 例 struct student int num; char name12; char sex; date birthday ; float sc4; ; struct student std,pers3; 或或 student std,pers3; std:结构体变量结构体变量 pers:结构体数组,结构体数组, (三个元素均为结构体类型变量)(三个元素均为结构体类型变量) 第10章 变量std的结构 num name sex year

9、month day sc0 sc1 sc2 sc3 birthday 注意:各成员按顺序排列注意:各成员按顺序排列 第10章 方法二 struct student int num; char name12; char sex; struct date birthday ; float sc4; std,pers3; struct 结构体名结构体名 成员列表成员列表 变量名列表;变量名列表; 第10章 struct int num; char name12; char sex; date birthday ; float sc4; std,pers3; 方法三 struct 成员列表成员列表 变

10、量名列表;变量名列表; 无结构体名无结构体名 第10章 结构体类型的几点说明 结构体中的成员可以象变量一样使用。结构体中的成员可以象变量一样使用。 成员名可以与程序中的变量同名成员名可以与程序中的变量同名 结构体中的成员也可为结构体变量结构体中的成员也可为结构体变量 类型与变量是完全不同的概念。类型与变量是完全不同的概念。 先定义结构类型,再定义变量为该类型先定义结构类型,再定义变量为该类型 。 类型:类型:不可赋值、存贮、运算;系统不分配空间。不可赋值、存贮、运算;系统不分配空间。 变量:变量:可赋值、存贮、运算;系统要分配空间。可赋值、存贮、运算;系统要分配空间。 第10章 结构体类型变量

11、初值 struct student int num; char name12; char sex; date birthday ; float sc4; std=10101,liming,m,1962,5,10,88,76,8 5.5,90; 注意:注意: 一一对应赋初值,一一对应赋初值, 不允许跳跃赋值。不允许跳跃赋值。 可只给前面的成员赋值可只给前面的成员赋值 第10章 给结构体数组赋初值 v数组中的每个元素是一个结构体类型的数据,数组中的每个元素是一个结构体类型的数据, 因此将此成员的值依次放在一对花括号中因此将此成员的值依次放在一对花括号中 例:例: struct bookcard c

12、har num5; float money; bk3=no.1,35.5,no.2,25.0, no.3,66.7; 第10章 给二维结构体数组赋初值例 struct char ch; int i; float x; arr23=a,1,3e10,a,2,4e10, a,3,5e10,b,1,6e5,b,2,7e5, b,3, 8e5; 第10章 结构体类型变量及其成员的引用 v两种方式两种方式 f引用成员引用成员 m结构体变量名结构体变量名.成员名成员名 f引用整体引用整体 struct t int i, j; char name10; ; t t1=12, 48, lili, t2; t2

13、=t1; 其中其中“t2=t1;”等同于:等同于: t2.i=t1.i; t2.j=t1.j; strcpy(, ); 结构体变量的成员可以像普结构体变量的成员可以像普 通变量一样进行各种运算,通变量一样进行各种运算, 如如stud1.num+、 stud1.sex=stud2.sex; 结构体变量不能 进行整体输入输出 第10章 优先级:优先级: 1 结合性:结合性: 左左 例:有定义:例:有定义: struct date 对变量对变量today作成员选择运算:作成员选择运算: int year ; today. year int型型 int month ; to

14、day. month int型型 int day; today. day int型型 today ; 成员选择运算的结果是得到了该结构变量的某个成成员选择运算的结果是得到了该结构变量的某个成 员员,其数据类型是定义该结构体类型时成员列表中定,其数据类型是定义该结构体类型时成员列表中定 义的类型。义的类型。 成员运算符“.” 第10章 例 struct data int month; int day; int year; ; struct student char name20; char sex; data birthday; int sc4; std,arr5; (1)引用)引用sex st

15、d.sex(通过结构体变量引用)通过结构体变量引用) 引用引用arr0中的中的sex: arr0.sex 不能写作不能写作 arr.sex 第10章 例 struct data int month; int day; int year; ; struct student char name20; char sex; data birthday; int sc4; std,arr5 ; (2)引用引用sc中的元素,如中的元素,如sc1 std.sc1(通过结构体变量引用)通过结构体变量引用) 不能写成不能写成std.sc c+语言不允许对数组语言不允许对数组 整体访问(字符串除外整体访问(字符串

16、除外) 第10章 例 struct data int month; int day; int year; ; struct student char name20; char sex; data birthday; int sc4; std,arr5 ; (3)成员为字符串)成员为字符串 如如name (通过结构体变量引用)通过结构体变量引用) 第10章 例 struct data int month; int day; int year; ; struct student char name20; char sex; data birthday; int

17、sc4; std,arr5 ; (4)内嵌结构体成员的引用内嵌结构体成员的引用 逐层使用成员名定位逐层使用成员名定位 引用引用std中的出生年份中的出生年份 std.birthday.year 只可引用最只可引用最 低一级成员低一级成员 第10章 例例是字符串,可以对它进行对任何是字符串,可以对它进行对任何 字符串允许的操作,包括输入输出。字符串允许的操作,包括输入输出。 对结构体变量中的每个成员,可对它进行同类对结构体变量中的每个成员,可对它进行同类 变量所允许的任何操作。变量所允许的任何操作。 对结构体变量中的成员进行操作 第10章 例 struct data int mo

18、nth; int day; int year; ; struct student char name20; char sex; data birthday; int sc4; std,pers5 ; (1)对)对name的操作的操作 ; 或或cin.getline(,80); (2)对)对sex的操作的操作 cinstd.sex; for(i=0;ipersi.sex; std.sex= m; 注意:注意: 不能写成不能写成 =li ming 第10章 struct data int month; int day; int year; ;

19、struct student char name20; char sex; data birthday; int sc4; std,pers5; 例 (3)对)对birthday中中year的操作的操作 cinstd.birthday.year; std.birthday.year=1962; 第10章 结构体数组 struct student int num; char name20; char sex; int age; float score; char addr30; stud4 = 23901, zang li, f, 19, 78.5, 35 shanghai road, 2390

20、2, wang fang, f, 19, 92, 101 taiping road, 23905, zhao qiang, m, 20, 87, 56 ninghai road, 23908, li hai, m, 19, 95, 48 jiankang road; 第10章 内存存储情况 stud0 stud1 . . . 23901 zang li f 19 78.5 35 shanghai road 23902 wang fang f 19 92 101 taiping road . . . 第10章 结构体数组的应用 问题:问题:建立一个学生档案的结构体数组,输入并输出学生的信息。建立

21、一个学生档案的结构体数组,输入并输出学生的信息。 #include /li0802_2.cpp 输入输出学生信息输入输出学生信息 #include struct student char num16; char name20; float score; ; student input(student stud) stud.score; return stud; 第10章 结构体数组的应用 void output(student stud) coutsetw(10)stud.numsetw(10) setw(10)stud.scoree

22、ndl; void main( ) student studs3; for (int i=0;i3;i+) studsi=input(studsi); coutsetw(10)学号学号setw(10)姓名姓名setw(20)程程 序设计成绩序设计成绩 endl; for(i=0;i3;i+) output(studsi); coutendl; 传值调用传值调用 演示演示 第10章 引用调用 #include /输入输出学生信息输入输出学生信息 #include struct student char num16; char name20; float score; ; void input(s

23、tudent 第10章 引用调用 void output(student void main( ) student studs3; for (int i=0;i3;i+) input(studsi); coutsetw(10)学号学号setw(10)姓名姓名setw(20)程程 序设计成绩序设计成绩 endl; for(i=0;i3;i+) output(studsi); coutendl; 第10章 求若干学生的平均成绩 struct stud int num; char name20; int age; char sex; int score; ; #include float avera

24、ge(stud studs, int n) float aver=0; for(int i=0; in; i+) aver += studsi.score; aver /= n; return aver; void main(void) stud studs4= 020110101, wu, 19, m, 80, ; float aver ; aver=average(studs, 4); cout 平均成绩为平均成绩为: aver name; (*p).id 等效于等效于p-id; (*p).salary 等效于等效于p-salary. 第10章 在使用指针访问成员时,通常使用箭头操作符在使

25、用指针访问成员时,通常使用箭头操作符“-”。 例如:下面程序中,定义了结构指针,通过结构指针访问结构例如:下面程序中,定义了结构指针,通过结构指针访问结构 成员。成员。 #include #include strut person char name20; unsigned long id; float salary; ; 第10章 void main( ) person pr1; person *p; p= strcpy(p-name, “wang ming”); p-id=12345678; p-salary=4800.0; coutname“ ”p-id“ ”salaryendl; 结果

26、为:结果为: wang ming 12345678 4800.0 第10章 如果一个数组的元素是同一种结构类型的变量,那么这种如果一个数组的元素是同一种结构类型的变量,那么这种 数组称为结构数组。数组称为结构数组。 要定义一个结构数组,必须先定义一个结构类型,然后再要定义一个结构数组,必须先定义一个结构类型,然后再 定义具有这种结构类型的一个数组。定义具有这种结构类型的一个数组。 例如,定义一个包含例如,定义一个包含100个元素的个元素的person 结构数组:结构数组: struct person char name20; unsigned long id; float salary; ;

27、person allone100; 10.3 结构与数组结构与数组 第10章 数组中每个元素是一个完整的结构变量,它包含数组中每个元素是一个完整的结构变量,它包含name、id、 salary三个成员分量。三个成员分量。 allone0 访问第一个数组元素;访问第一个数组元素; allone99访问最后一个数组元素。访问最后一个数组元素。 例如:下面程序对一个例如:下面程序对一个person 结构数组中的元素进行结构数组中的元素进行“冒泡法冒泡法” 排序,工资高的排在后面。排序,工资高的排在后面。 #include struct person char name20; unsigned lon

28、g id; float salary; ; 第10章 person allone6=“jone”,12345,3390.0, “david”,13916,4490.5, “marit”,27519,3110.0, “jasen”,42876,6230.5, “peter”,23987,4000.2, “yoke”,12335,5110.0; void main( ) person temp; for(int i=1; i6;i+) /排序轮次数排序轮次数 for(int j=0;jallonej+1.salary) /工资高的后移工资高的后移 temp=allonej; allonej=all

29、onej+1; alonej+1=temp; 第10章 for(int k=0;k6;k+) “ ” allonek.id“ ” allonek.salaryendl; 运行结果为:运行结果为: marit 27519 3110.0 jone 12345 3390.0 peter 23987 4000.2 david 13916 4490.5 yoke 12335 5110.0 jasen 42876 6230.5 第10章 结构变量也可以作为实参数进行函数调用。可以采用传值、结构变量也可以作为实参数进行函数调用。可以采用传值、 传址、传引用的三种方式传递参数。

30、传址、传引用的三种方式传递参数。 一、传递结构变量值一、传递结构变量值 因为传递的是实参结构变量中拷贝的数值,所以实参结构因为传递的是实参结构变量中拷贝的数值,所以实参结构 变量的数值不会因为函数的调用而被修改。变量的数值不会因为函数的调用而被修改。 例如:下面是一个传值调用的例子例如:下面是一个传值调用的例子 #include struct person char name20; unsiged long id; float saslary; ; 10.4 传递结构参数传递结构参数 第10章 void print(person pr) “ ”pr.id“ ”pr.sal

31、aryendl; person allone4=“jone”,12345,3390.0, “david”,13916,4490.5, “marit”,27519,3110.0, “yoke”,12335,5110.0; void main( ) for(int i=0;i4;i+) print(allonei); /实参数为结构数组元素实参数为结构数组元素 结果为:结果为: jone 12345 3390.0 david 13916 4490.5 marit 27519 3110.0 yoke 12335 5110.0 第10章 二、传递结构变量的引用二、传递结构变量的引用 结构变量也可以按引

32、用方式传递,此时仅把实参的地址传结构变量也可以按引用方式传递,此时仅把实参的地址传 给形参。由于传递的是地址,可以实现由形参直接修改实参的给形参。由于传递的是地址,可以实现由形参直接修改实参的 作用。作用。 引用传递没有传递值的拷贝数据过程,节省了传送时间和引用传递没有传递值的拷贝数据过程,节省了传送时间和 所需的存储空间,传递效率提高。所需的存储空间,传递效率提高。 第10章 例如,将前面的程序改为用引用传递结构变量,只需在例如,将前面的程序改为用引用传递结构变量,只需在 print( )函数定义时,将形参说明为引用。其函数调用方式与传函数定义时,将形参说明为引用。其函数调用方式与传 递方式

33、相同。递方式相同。 void print(person 三、传递结构变量的地址三、传递结构变量的地址 传递结构变量地址与传递引用的功能类似,都能实现双向传递结构变量地址与传递引用的功能类似,都能实现双向 传递。若将前面程序改为传递结构变量的地址,只需定义传递。若将前面程序改为传递结构变量的地址,只需定义 print( )函数时,将形参说明为指向结构变量的指针,函数调用函数时,将形参说明为指向结构变量的指针,函数调用 时传递实参结构变量的地址。时传递实参结构变量的地址。 第10章 返回值为结构类型的函数称为结构函数。返回值为结构类型的函数称为结构函数。 一、返回结构变量一、返回结构变量 一个函数

34、可以返回一个结构变量。在一个函数可以返回一个结构变量。在main( )中,调用结构中,调用结构 函数的返回值必须赋于具有相同结构类型的变量。函数的返回值必须赋于具有相同结构类型的变量。 例如:例如: #include struct person char name20; unsigned long id; float salary; ; 10.5 结构函数结构函数 第10章 person getperson( ) /定义返回结构变量的函数定义返回结构变量的函数 person temp; ; couttemp.idtemp.salary; return temp; /返

35、回结构变量返回结构变量temp void print(person 第10章 void main( ) person employee3; for(int i=0;i3;i+) employeei=getperson( ); /返回值赋给同类型的结构变量返回值赋给同类型的结构变量 print(employeei); 结果:结果: please enter a name for one person: marit please enter ones id number and his salary: 27519 3110.0 marit 27519 3110.0 第10章 如果将上例中的如果将上

36、例中的getperson( )函数改为引用传递,则可提高函数改为引用传递,则可提高 程序运行效率,省去函数返回值赋以同类型结构变量的操作。程序运行效率,省去函数返回值赋以同类型结构变量的操作。 改写后的程序如下:改写后的程序如下: #include struct person char name20; unsigned long id; float salary; ; void getperson(person coutp.idp.salary; 第10章 void print(person void main( ) person employee3; for(int i=0;i3;i+) g

37、etperson(employeei); /函数调用后,实参获取输入数据函数调用后,实参获取输入数据 print(employeei); 二、返回结构的引用二、返回结构的引用 一个函数可以返回一个结构引用,也可以返回一个结构指针。一个函数可以返回一个结构引用,也可以返回一个结构指针。 第10章 一、结构的嵌套一、结构的嵌套 结构可以嵌套,即结构中可以是另一个结构类型的成员变结构可以嵌套,即结构中可以是另一个结构类型的成员变 量。例如:量。例如: struct person struct date char name10; int month; int age; int day; float w

38、age; int year; data payday; ; worker; 也可以表示为:也可以表示为: 10.6 链表结构链表结构 第10章 struct person char name10; int wage; struct date int month; int day; int year; payday; worker; 结构变量结构变量payday 是嵌套在结构是嵌套在结构person 内的内的一个成员分量。一个成员分量。 在访问嵌套结构的成员时,可以使用多个点操作符,从最外层在访问嵌套结构的成员时,可以使用多个点操作符,从最外层 到最内层逐个列出成员名:到最内层逐个列出成员名:

39、worker.wage=5000.0; worker.payday.month=11; 第10章 二、链表结构二、链表结构 结构成员变量不能包含有自身的结构变量,但可以是指向结构成员变量不能包含有自身的结构变量,但可以是指向 该结构变量的指针。该结构变量的指针。 通过包含一个指向自身结构的指针,可以实现不连续分布通过包含一个指向自身结构的指针,可以实现不连续分布 的结构变量的遍历。的结构变量的遍历。 如下面的结构:如下面的结构: strct list char name20; list *pn; 其中,其中,name成员含有实际的信息;成员含有实际的信息;pn 是是指向另一个指向另一个list

40、 结结 构变量的指针。构变量的指针。 第10章 显然,通过结构变量中的指针成员链接,能构成任意长度的显然,通过结构变量中的指针成员链接,能构成任意长度的 结构链,这样的结构链称为链表。链表中的每个结构链,这样的结构链称为链表。链表中的每个list 结构变量称为结构变量称为 一个结点。一个结点。 marit0074:8854divid0074:88f2链首指针链首指针 0074: 8ac2 0074: 8854 susen0074:28f6anenull 0074: 28f6 0074: 38fa jone0074:38fa 0074: 88f2 第10章 链表是由一个个有序的结点组成的,每个结

41、点是同类型的链表是由一个个有序的结点组成的,每个结点是同类型的 结构变量。结构变量。 通过程序可以建立和显示链表,可以插入、删除及增加结通过程序可以建立和显示链表,可以插入、删除及增加结 点来维护链表。点来维护链表。 链表总是包含有链首指针,链表的操作一般都先由链首指链表总是包含有链首指针,链表的操作一般都先由链首指 针引导。针引导。 三、链表的创建与遍历三、链表的创建与遍历 例如:下面程序建立一个链表,并输出该链表。例如:下面程序建立一个链表,并输出该链表。 #include struct student long number; float score; student *next; ;

42、第10章 student *head; /链首指针链首指针 student *greate( ) /创建链表函数创建链表函数 student *ps; /创建新结点指针创建新结点指针 student *pend; /移动的链尾指针,用于在其后插入结点移动的链尾指针,用于在其后插入结点 ps=new student; /动态申请新建结点的存储空间动态申请新建结点的存储空间 cinps-numberps-score; /结点赋值结点赋值 head=null; /开始时链表为空开始时链表为空 pend=ps; while(ps-number!=0) if(head=null) head=ps; el

43、se pend-next=ps; 第10章 pend=ps; /s点点 ps=new student; cinps-numberps-score; pend-next=null; delete ps; return(head); void showlist(student *head) cout“the items of list are:n”; while(head) coutnumber“, ”scorenext; 第10章 void main( ) showlist(greate( ); 输入:输入: 结果:结果: 401 85.0 the items of list are: 410

44、73.0 401, 85.0 425 91.0 410, 73.0 413 68.0 425, 91.0 432 82.0 413, 68.0 0 0 432, 82.0 在在main( )中,把建立链表函数中,把建立链表函数greate( )的返回值的返回值head(指向链指向链 表指针表指针)作为实参数调用作为实参数调用showlist( )函数。函数。 第10章 greate( )函数中,链表创建过程如下图所示:函数中,链表创建过程如下图所示: 进入循环之前:进入循环之前: head null 第一次进入循环到达第一次进入循环到达s点:点: pend ps head 第一次循环结束后:第

45、一次循环结束后: head pend ps 40185.0 40185.0 71073.0 第10章 第二次循环到达第二次循环到达s点时:点时: head pend ps 第二次循环结束时:第二次循环结束时: head pend ps 程序结束时:程序结束时: head 40185.041073.0 40185.041073.0 42591.0 40185.041073.042591.0 41368.043282.0null 第10章 共用体的定义及应用 v问题的提出:问题的提出:表格表格 “学生班级学生班级 / 教师职务教师职务” name num sex job li 1011 f s 5

46、01 zhou 2085 m t prof class position struct people char name10; int num; char sex; char job; union int class; char position20; category; ; class 和和 position 的使用是互斥的,可分成两列,的使用是互斥的,可分成两列, 为节省空间,合并成一列。为节省空间,合并成一列。 第10章 共用体变量的定义 不同数据类型的一组变量使用同一组内存单元。不同数据类型的一组变量使用同一组内存单元。 union data char c; float f; int i ; ; union data a,b,c; 或或data a,b,c; union data char c; float f; int i ; a,b,c; union char c; float f; int i ; a,b,c; 共用体变量的定义同结构体一样有三种形式:共用体变量的定义同结构体一样有三种形式: 关键字关键字共用体名共用体名 共用体类型共用体类型 第10章 使用共用体变量 引用成员引用成员 a.i /引用共用体变量中的整型变量引用共用体变量中的整型变量i a.c /引

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论