第7章 结构体 共用体与枚举_第1页
第7章 结构体 共用体与枚举_第2页
第7章 结构体 共用体与枚举_第3页
第7章 结构体 共用体与枚举_第4页
第7章 结构体 共用体与枚举_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

1、2022-7-7第第7章章 结构体结构体1C C语言程序设计语言程序设计第第7 7章章 结构体结构体2022-7-7第第7章章 结构体结构体2【学习目标学习目标】掌握结构类型的定义。掌握结构类型的定义。掌握结构类型变量的定义与使用。掌握结构类型变量的定义与使用。了解共用体类型和枚举类型。了解共用体类型和枚举类型。2022-7-7第第7章章 结构体结构体37.1 7.1 结构体类型结构体类型7.2 结构体变量 7.5 用户定义类型第第7 7章章 结构体与枚举结构体与枚举 7.3 共用体类型7.4 枚举类型2022-7-7第第7章章 结构体结构体4【问题问题】如何表示一个学生的基本信息?如何表示多

2、如何表示一个学生的基本信息?如何表示多个学生的基本信息?个学生的基本信息?学号学号姓名姓名性别性别年龄年龄地址地址(长整型长整型)(字符数组字符数组)(字符字符)(整型整型)(字符数组字符数组)7.1 7.1 结构体类型结构体类型2022-7-7第第7章章 结构体结构体5结构体类型的定义:结构体类型的定义:7.1 7.1 结构体类型结构体类型struct 结构体名结构体名 数据类型数据类型 成员名;成员名; 数据类型数据类型 成员名;成员名; .;成员类型可以是成员类型可以是基本类型或已定基本类型或已定义的构造类型义的构造类型struct是是关键关键字字, ,不能省略不能省略合法标识符合法标识

3、符可省略可省略:无名结构体无名结构体各成员项之间各成员项之间用用“;”隔开隔开构造类型定义是构造类型定义是C语语言语句,以言语句,以“;”结束结束P1752022-7-7第第7章章 结构体结构体6例如结构体学生类型定义:例如结构体学生类型定义: struct student /*struct student是结构体类型名是结构体类型名 */ /* 以下定义成员项的类型和名字以下定义成员项的类型和名字 */ long num; char name20; char sex; int age; char addr30; ;7.1 7.1 结构体类型结构体类型结构体结构体类型类型定义定义描描述结构的组

4、织形式述结构的组织形式,不分配内存空间不分配内存空间P1752022-7-7第第7章章 结构体结构体77.1 结构体类型第第7 7章章 结构体与枚举结构体与枚举 7.5 用户定义类型7.3 共用体类型7.4 枚举类型2022-7-7第第7章章 结构体结构体87.2.1 7.2.1 结构体变量的声明结构体变量的声明结构体变量的说明有三种方法:结构体变量的说明有三种方法:1.先定义结构体类型,再定义结构体类型变量。先定义结构体类型,再定义结构体类型变量。struct 结构体名结构体名 数据类型数据类型 成员名;成员名; 数据类型数据类型 成员名;成员名; .;struct 结构体名结构体名 变量列

5、表;变量列表; struct student long num; char name20; char sex; int age; char addr30; ; struct student stu1,stu2; struct student stu3;可多次使用可多次使用P1752022-7-7第第7章章 结构体结构体97.2.1 7.2.1 结构体变量的声明结构体变量的声明2.在定义结构体类型的同时定义结构体变量在定义结构体类型的同时定义结构体变量struct 结构体名结构体名数据类型数据类型 成员名;成员名;数据类型数据类型 成员名;成员名; . 变量名列表;变量名列表;如:如: stru

6、ct student long num; char name20; char sex; int age; char addr30; stu4,stu5; struct student stu6;可多次使用可多次使用P1752022-7-7第第7章章 结构体结构体107.2.1 7.2.1 结构体变量的声明结构体变量的声明3.直接定义无名结构体的同时定义结构体变量直接定义无名结构体的同时定义结构体变量struct 数据类型数据类型 成员名;成员名; 数据类型数据类型 成员名;成员名; .变量名列表;变量名列表;用无名结构体直接用无名结构体直接定义变量只能一次定义变量只能一次如:如: struct

7、long num; char name20; char sex; int age; char addr30; stu7,stu8; P176几点说明几点说明u结构体类型与结构体变量概念不同结构体类型与结构体变量概念不同类型类型:不分配内存;不分配内存;变量变量:分配内存分配内存(所有成员之和)(所有成员之和)类型类型:不能赋值、存取、运算不能赋值、存取、运算; 变量变量:可以可以u结构体成员名结构体成员名(域名)与程序中变量名地位相同域名)与程序中变量名地位相同u结构体可嵌套结构体可嵌套例例 struct date int month; int day; int year; ; struct

8、student int num; char name20; struct date birthday; stu;numnamebirthdaymonthdayyear例例 struct student int num; char name20; struct date int month; int day; int year; birthday; stu; numnamebirthdaymonthdayyearchar name20int numchar sexint agechar addr304字节字节20字节字节1字节字节4字节字节30字节字节.P176可用可用sizeof()来求来求2

9、022-7-7第第7章章 结构体结构体127.2.2 7.2.2 结构体变量初始化结构体变量初始化在定义结构体变量的同时可以进行初始化赋值。在定义结构体变量的同时可以进行初始化赋值。例如:例如: struct student long num; char name20; char sex; int age; char addr30; ; 注意:注意:初始化数据应与类型定义中的各个成员在位置上初始化数据应与类型定义中的各个成员在位置上一一对应。一一对应。struct student stu1=201001,Li Nin,18, M, 大学南路大学南路252号号, stu2=201002,Jing

10、 Qing,19, F, 淮南人民南路淮南人民南路361号号; P1772022-7-7第第7章章 结构体结构体137.2.2 7.2.2 结构体变量初始化结构体变量初始化 对于嵌套的结构体类型变量,初始化是对各个基对于嵌套的结构体类型变量,初始化是对各个基本类型的成员赋初值,本类型的成员赋初值,例:例:struct dateint year; int month;int day;struct student1long num; char name20; struct date birthday; stu11,stu12; struct student1 stu11=2010003,Lin L

11、ong,1993,12,5; 或者:或者:struct student1 stu11=2010003,Lin Long,1993,12,5; P1772022-7-7第第7章章 结构体结构体147.2.3 7.2.3 结构体变量的引用结构体变量的引用 引用规则引用规则 结构体变量结构体变量不能整体引用不能整体引用,只能引用变量成员只能引用变量成员可以将一个结构体变量赋值给另一个结构体变量可以将一个结构体变量赋值给另一个结构体变量结构体嵌套时逐级引用结构体嵌套时逐级引用成员成员(分量分量)运算符运算符优先级优先级: 1结合性结合性:从左向右从左向右引用方式:引用方式: 结构体变量名结构体变量名.

12、成员名成员名例例 struct student int num; char name20; char sex; int age; float score; char addr30; stu1,stu2; stu1.num=10;stu1.score=85.5;stu1.score+=stu2.score; stu1.age+;例例 struct student int num; char name20; char sex; int age; float score; char addr30; stu1,stu2; printf(“%d,%s,%c,%d,%f,%sn”,stu1); ( )st

13、u1=101,“Wan Lin”,M,19,87.5,“DaLian”; ( )例例 struct student int num; char name20; char sex; int age; float score; char addr30; stu1,stu2; stu2=stu1; ( )例例 struct student int num; char name20; struct date int month; int day; int year; birthday; stu1,stu2;numnamebirthdaymonthdayyearstu1.birthday.month=1

14、2;例例 struct student int num; char name20; char sex; int age; float score; char addr30; stu1,stu2; if(stu1=stu2). ( )P1782022-7-7第第7章章 结构体结构体157.2.3 7.2.3 结构体变量的引用结构体变量的引用【例例7-2】输出结构体数据输出结构体数据void main() struct student long num;char name20; int age; char sex;char address30;stu1=201001,Li Nin,18, M, 1

15、3 huaihe Road;struct dateint year; int month;int day;P1782022-7-7第第7章章 结构体结构体167.2.3 7.2.3 结构体变量的引用结构体变量的引用续续【例例7-2】struct student1long num;char name20; struct date birthday; char sex; char address30; stu11=201003,Lin Long,1993,12,5,M,13 huainan Road;printf(嵌套结构体嵌套结构体%s,%d,%dn,, stu11.birt

16、hday.year,stu11.birthday.month);printf(普通结构体普通结构体%s,%d,%sn,, stu1.age,stu1.address); 2022-7-7第第7章章 结构体结构体177.2.4 7.2.4 结构体数组结构体数组1.结构体数组的定义结构体数组的定义 形式一形式一: : struct student int num; char name20; char sex; int age;struct student stu2;形式二形式二: :struct student int num; char name20; char sex; in

17、t age;stu2;形式三形式三:struct int num; char name20; char sex; int age;stu2;numnamesexagenumnamesexagestu0stu129BP1802022-7-7第第7章章 结构体结构体187.2.4 7.2.4 结构体数组结构体数组2.结构体数组的初始化结构体数组的初始化 结构体数组的一个元素相当于一个结构体变量,结构体数组的一个元素相当于一个结构体变量,结构体数组初始化即顺序对数组元素初始化,方法与结构体数组初始化即顺序对数组元素初始化,方法与其他类型的数组赋初值的方法相同其他类型的数组赋初值的方法相同例例 str

18、uct int num; char name20; char sex; int age; stu =,;顺序初始化顺序初始化: struct student int num; char name20; char sex; int age; ;struct student stu3 =100,“Wang Lin”,M,20, 101,“Li Gang”,M,19, 110,“Liu Yan”,F,19; 分元素初始化分元素初始化: struct student int num; char name20; char sex; int age; ;struct student stu =100,“W

19、ang Lin”,M,20, 101,“Li Gang”,M,19, 110,“Liu Yan”,F,19; 全部初始化时长度可省略全部初始化时长度可省略P1802022-7-7第第7章章 结构体结构体197.2.4 7.2.4 结构体数组结构体数组3.结构体数组的引用。结构体数组的引用。 (1) 除初始化外,对结构体数组赋常数值、输入除初始化外,对结构体数组赋常数值、输入和输出、各种运算均是对和输出、各种运算均是对结构体数组元素的成员结构体数组元素的成员(相当于普通变量)进行的。(相当于普通变量)进行的。 结构体数组元素的成员表示为:结构体数组元素的成员表示为: 结构体数组名结构体数组名下标

20、下标.成员名成员名在嵌套的情况下为:在嵌套的情况下为: 结构体数组名结构体数组名下标下标.结构体成员名结构体成员名. 成员名成员名 struct student int num; char name20; char sex; int age; str3;strcpy(,”ZhaoDa”);stu1.age+;P1812022-7-7第第7章章 结构体结构体207.2.4 7.2.4 结构体数组结构体数组(2) 结构体数组元素可相互赋值结构体数组元素可相互赋值例如:例如:stu211=stu212;对于结构体数组元素内嵌的结构体类型成员,情况对于结构体数组元素内嵌的结构体类型成

21、员,情况也相同。如:也相同。如: stu312.birthday=stu311.birthday; (3) 其他注意事项也与结构体变量的引用相同,其他注意事项也与结构体变量的引用相同, 例如:不允许对结构体数组元素或结构体数组元例如:不允许对结构体数组元素或结构体数组元素内嵌的结构体类型成员整体赋(常数)值;不允许素内嵌的结构体类型成员整体赋(常数)值;不允许对结构体数组元素或结构体数组元素内嵌的结构体类对结构体数组元素或结构体数组元素内嵌的结构体类型成员整体进行输入输出等。型成员整体进行输入输出等。 P1822022-7-7第第7章章 结构体结构体217.2.4 7.2.4 结构体数组结构体

22、数组 在处理结构体问题时经常涉及在处理结构体问题时经常涉及字符或字符串字符或字符串的的输入,这时要注意:输入,这时要注意:scanf()函数用函数用%s输入字符串输入字符串遇空格即结束,因遇空格即结束,因此输入带空格的字符串可改用此输入带空格的字符串可改用gets()函数函数。字符串处理使用字符串函数。字符串处理使用字符串函数。在输入字符类型数据时往往得到的是空白符(空在输入字符类型数据时往往得到的是空白符(空格、回车等),甚至运行终止,因此常作相应处理格、回车等),甚至运行终止,因此常作相应处理,即在,即在适当的地方增加适当的地方增加getchar();空输入语句,;空输入语句,以以消除缓冲

23、区中的空白符。消除缓冲区中的空白符。 2022-7-7第第7章章 结构体结构体227.2.4 7.2.4 结构体数组结构体数组【例例7-4】已知已知15人(人数可以通过宏定义改变)参加选人(人数可以通过宏定义改变)参加选举,共三个候选人,候选人的基本信息定义在结构体类举,共三个候选人,候选人的基本信息定义在结构体类型当中,包括候选人的标识号型当中,包括候选人的标识号id(整型),候选人的姓(整型),候选人的姓名名name(字符型数组),得票数(字符型数组),得票数count(整型整型)。选举时投。选举时投票即输入三个人的标识号(票即输入三个人的标识号(id成员项,分别取成员项,分别取1、2、3

24、),),统计每位候选人得票数。统计每位候选人得票数。 #include stdio.h“ #define NUMBER 15 struct candidate int id; char name20; int count; nominee3=1,李宁李宁,0,2,王新王新,0,3,赵广赵广,0; 2022-7-7第第7章章 结构体结构体237.2.4 7.2.4 结构体数组结构体数组void main() int i,num; for(i=0;iNUMBER;i+) scanf(%d,&num); switch (num) case 1: nominee0.count+; break; cas

25、e 2: nominee1.count+; break; case 3: nominee2.count+; break; default: printf(输入错误,没有该提名人输入错误,没有该提名人n); for(i=0;i成员成员如:如: stu stu1,*p=&stu1; 结构变量结构变量stu1的成员的成员stu1.num可表示可表示为:为: (*p).num 或者或者 p-numP1852022-7-7第第7章章 结构体结构体267.2.5 7.2.5 结构体指针结构体指针2.结构体数组与结构体指针变量结构体数组与结构体指针变量 一维数组的数组名代表数组的首地址,一维结一维数组的数组

26、名代表数组的首地址,一维结构体数组也一样。可以将构体数组也一样。可以将一维结构体数组名赋给指一维结构体数组名赋给指向结构体变量的指针变量向结构体变量的指针变量,该指针变量将指向下标,该指针变量将指向下标为为0 0的元素,它可以的元素,它可以在数组元素之间移动。在数组元素之间移动。 2022-7-7第第7章章 结构体结构体277.2.5 7.2.5 结构体指针结构体指针【例例7-7】利用结构体指针变量输出结构体数组数据利用结构体指针变量输出结构体数组数据#include stdio.hvoid main() struct student long num;char name20; int age

27、; char sex;char address30;stu3=201001,李宁李宁,18, M, 淮南大学南路淮南大学南路252号号, 201002,清青清青,18, F, 淮南人民南路淮南人民南路361号号, 201003,王新王新,20, M, 淮南国庆路淮南国庆路196号号 ; 2022-7-7第第7章章 结构体结构体287.2.5 7.2.5 结构体指针结构体指针struct student *p,*q; /声明结构体指针声明结构体指针char *pt;int i;for(p=stu; pnum, p-name, p-age,p-sex,p-address);q=(struct st

28、udent *); /强制类型转换强制类型转换 for(p=q;pq+3;p+) printf(%st,p);for(i=0;i3;i+) pt=; printf(%st,pt); 2022-7-7第第7章章 结构体结构体297.2.6 7.2.6 结构体与函数结构体与函数1.结构体变量和结构体变量成员做函数参数结构体变量和结构体变量成员做函数参数 (1) 结构体变量成员作为函数的实参结构体变量成员作为函数的实参 由于结构体变量成员存放基本类型数据,因此这由于结构体变量成员存放基本类型数据,因此这种情况种情况同基本类型有值变量做实参同基本类型有值变量做实参,

29、实现值传递。,实现值传递。要注意实参与形参类型的一致。要注意实参与形参类型的一致。 【例例7-8】输入结构体数组中学生的学号和姓名。输入结构体数组中学生的学号和姓名。 #include stdio.hvoid print(long num1,char *p) printf(学号学号:%ldt姓名:姓名:%sn, num1,p);P1862022-7-7第第7章章 结构体结构体307.2.6 7.2.6 结构体与函数结构体与函数void main() struct student long num;char name20; int age; char sex;char address30;stu

30、3=201001,李宁李宁,18, M, 淮南大学南路淮南大学南路252号号, 201002,清青清青,18, F, 淮南人民南路淮南人民南路361号号, 201003,王新王新,20, M, 淮南国庆路淮南国庆路196号号 ;int i;for(i=0;i3;i+) print(stui.num,); 2022-7-7第第7章章 结构体结构体317.2.6 7.2.6 结构体与函数结构体与函数(2) 结构体变量作为函数参数结构体变量作为函数参数这种用法的参数形式为:这种用法的参数形式为:形参:结构体变量;形参:结构体变量;实参:有值结构体变量或结构体数组元素。实参:有值结构

31、体变量或结构体数组元素。通过实参将相应的结构体类型数据传给对应的形参通过实参将相应的结构体类型数据传给对应的形参,实现,实现传值调用传值调用,不同于数组作参数的传址调用!,不同于数组作参数的传址调用!【注意注意】在结构体类型数据作为函数参数时,为了在结构体类型数据作为函数参数时,为了在虚实结合时保持形参与实参类型的一致,应将结构在虚实结合时保持形参与实参类型的一致,应将结构体类型定义成外部的,即在所有函数之前定义结构体体类型定义成外部的,即在所有函数之前定义结构体类型。类型。 P1862022-7-7第第7章章 结构体结构体327.2.6 7.2.6 结构体与函数结构体与函数【例例7-9】 输

32、出学生的全部信息。输出学生的全部信息。#include stdio.hstruct student long num;char name20; int age; char sex;char address30;void print(struct student p) printf(学号学号:%ldt姓名:姓名:%st年龄:年龄:%dt性别:性别:%ct通讯地址:通讯地址:%sn, .num,,p.age,p.sex, p.address); 2022-7-7第第7章章 结构体结构体337.2.6 7.2.6 结构体与函数结构体与函数续续【例例7-9】 输出学生的全部信息。输出学生的

33、全部信息。void main() struct student stu3= 201001,李宁李宁,18, M, 淮南大学南路淮南大学南路252号号, 201002,清青清青,18, F, 淮南人民南路淮南人民南路361号号, 201003,王新王新,20, M, 淮南国庆路淮南国庆路196号号 ;int i;for(i=0;inum,p-name,p-age,p-sex,p-address);void main() struct student stu3= 201001,李宁李宁,18, M, 淮南大学南路淮南大学南路252号号, 201002,清青清青,18, F, 淮南人民南路淮南人民南

34、路361号号, 201003,王新王新,20, M, 淮南国庆路淮南国庆路196号号 ;int i;for(i=0;i3;i+) print(stu); 2022-7-7第第7章章 结构体结构体367.2.6 7.2.6 结构体与函数结构体与函数3.返回结构体类型数据的函数返回结构体类型数据的函数 函数返回值可以是结构体类型的值,也可以是指向结函数返回值可以是结构体类型的值,也可以是指向结构体变量(或数组元素)的指针。构体变量(或数组元素)的指针。当函数返回值是结构体当函数返回值是结构体类型的值时,称该函数为结构体类型函数;当函数返回值类型的值时,称该函数为结构体类型函数;当函数返回值是指向结

35、构体类型存储单元的指针时,称该函数为结构体是指向结构体类型存储单元的指针时,称该函数为结构体类型指针函数。类型指针函数。【例例7-11】查找并输出学号为查找并输出学号为201001学生的全部信息,查学生的全部信息,查找用结构体类型函数实现。找用结构体类型函数实现。 #include stdio.hstruct student long num;char name20; int age; char sex;char address30; 2022-7-7第第7章章 结构体结构体377.2.6 7.2.6 结构体与函数结构体与函数struct student find(struct student

36、 p,int n)int i; for(i=0;i成员名成员名共用体变量名共用体变量名.成员名成员名(*共用体指针名共用体指针名).成员名成员名union data int i; char ch; float f; ;union data a,b,c,*p,d3;a.i a.ch a.fp-i p-ch p-f(*p).i (*p).ch (*p).fd0.i d0.ch d0.f共用体变量中起作用的成员是最后一次存放的成员共用体变量中起作用的成员是最后一次存放的成员例例 union int i; char ch; float f; a; a=1; ( ) 共用体变量在定义时只能共用体变量在定

37、义时只能初始化第一个成员初始化第一个成员例例 union int i; char ch; float f; a=1,a,1.5; ( ) 可以用一个共用体变量为另一个变量赋值可以用一个共用体变量为另一个变量赋值例例 float x; union int i; char ch; float f; a,b; a.i=1; a.ch=a; a.f=1.5; b=a; ( ) x=a.f; ( )P196例例 将一个整数按字节输出将一个整数按字节输出01100001 01000001低字节低字节高字节高字节0100000101100001ch0ch1运行结果:运行结果:i=60501ch0=101,c

38、h1=141ch0=A,ch1=a void main() union int_char int i; char ch2; x; x.i=24897; printf(i=%on,x.i); printf(ch0=%o,ch1=%on ch0=%c,ch1=%cn, x.ch0,x.ch1,x.ch0,x.ch1);结构体与共用体结构体与共用体区别区别: 存储方式不同存储方式不同struct node char ch2; int k;a;union node char ch2; int k;b;achkbch k变量的各成员同时存在变量的各成员同时存在任一时刻只有一个成员存在任一时刻只有一个成员

39、存在联系联系: 两者可相互嵌套两者可相互嵌套2022-7-7第第7章章 结构体结构体447.1 结构体类型7.2 结构体变量 7.5 用户定义类型 7.3 共用体类型7.4 7.4 枚举类型枚举类型2022-7-7第第7章章 结构体结构体45 枚举类型用于声明一组命名的常数,枚举类型用于声明一组命名的常数,当一个变量当一个变量只只有几种可能的取值时有几种可能的取值时,可以将它定义为枚举类型。,可以将它定义为枚举类型。1.枚举类型定义枚举类型定义enum 枚举名枚举名枚举元素名枚举元素名1,枚举元素名,枚举元素名2,枚,枚举元素名举元素名n;(1) 枚举型是一个集合,集合中的元素枚举型是一个集合

40、,集合中的元素(枚举成员枚举成员)是一些是一些命名的整型常量,元素之间用逗号命名的整型常量,元素之间用逗号,隔开。隔开。(2) 枚举名是一个标识符,可以看成这个集合的名字,枚举名是一个标识符,可以看成这个集合的名字,是一个可选项,即是可有可无的。是一个可选项,即是可有可无的。(3) 第一个枚举成员的默认值为整型的第一个枚举成员的默认值为整型的0,后续枚举成员,后续枚举成员的值在前一个成员上加的值在前一个成员上加1。(4) 可以人为设定枚举成员的值,对于没有指定值的元可以人为设定枚举成员的值,对于没有指定值的元素,在前一个成员的基础上加素,在前一个成员的基础上加1。(5) 类型定义以分号类型定义

41、以分号;结束。结束。P1972022-7-7第第7章章 结构体结构体462.枚举类型变量枚举类型变量方法一:枚举类型的定义和变量的声明分开方法一:枚举类型的定义和变量的声明分开enum DAYMON=1, TUE, WED, THU, FRI, SAT, SUN;enum DAY yesterday;方法二:类型定义与变量声明同时进行方法二:类型定义与变量声明同时进行enum saturday,sunday = 0,monday,tuesday, wednesday, thursday,friday workday; 注:枚举类型变量是指将变量的值一一列出来注:枚举类型变量是指将变量的值一一列

42、出来,变量变量的值只限于列举出来的值的范围。的值只限于列举出来的值的范围。P1982022-7-7473.枚举类型变量的应用枚举类型变量的应用【例【例7-17】枚举类型变量的使用。】枚举类型变量的使用。#include void main() enum DAY Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday ; enum DAY yesterday, today, tomorrow; yesterday = Friday; today = (enum DAY) (yesterday + 1); tomorrow =

43、(enum DAY) 10; printf(%d %d %d n, yesterday, today, tomorrow); tomorrow = 10P1982022-7-7第第7章章 结构体结构体487.1 结构体类型7.2 结构体变量 7.3 共用体类型7.4 枚举类型2022-7-7第第7章章 结构体结构体491.给基本类型取给基本类型取“别名别名” 定义的形式为:定义的形式为: typedef 类型名类型名 标识符;标识符;注意:注意:“类型名类型名”必须是系统提供的数据类型必须是系统提供的数据类型或用户已定义的数据类型。例如:或用户已定义的数据类型。例如:typedef int I

44、NTEGER; /给给int起别名起别名INTEGERtypedef char * CHARP;CHARP p, q;等价于:等价于: char * p, *q;P1992022-7-7第第7章章 结构体结构体502.数组类型定义数组类型定义 定义的形式为:定义的形式为: typedef 类型名类型名 数组名数组名n; 例如:例如:typedef char STR120; /给字符数组起别名给字符数组起别名 STR1 s1,s2,s3; 等价于:等价于:char s120,s220,s320; P1992022-7-7第第7章章 结构体结构体513.结构类型定义结构类型定义定义的形式为:定义的形式为:type

温馨提示

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

评论

0/150

提交评论