下载此文档

自定义数据类型.ppt


文档分类:IT计算机 | 页数:约52页 举报非法文档有奖
1/52
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/52 下载此文档
文档列表 文档介绍
第7章自定义数据类型
结构体类型
共用体
枚举类型
用typedef声明类型
结构体
结构体是一种构造数据类型
用途:把不同类型的数据组合成一个整体—自定义数据类型
结构体类型定义
struct [结构体名]
{
类型标识符成员名;
类型标识符成员名;
…………….
};
成员类型可以是
基本型或构造型
struct是关键字,
不能省略
合法标识符
可省:无名结构体
例 struct student
{ int num;
char name[20];
char sex;
int age;
float score;
char addr[30];
};
name
num
sex
age
score
addr
2字节
2字节
20字节
1字节
4字节
30字节

…..
结构体类型定义描述结构
的组织形式,不分配内存
结构体类型定义的作用域
结构体变量的定义
先定义结构体类型,再定义结构体变量
一般形式:
struct 结构体名
{
类型标识符成员名;
类型标识符成员名;
…………….
};
struct 结构体名变量名表列;
例#define STUDENT struct student
STUDENT
{ int num;
char name[20];
char sex;
int age;
float score;
char addr[30];
};
STUDENT stu1,stu2;
例 struct student
{ int num;
char name[20];
char sex;
int age;
float score;
char addr[30];
};
struct student stu1,stu2;
定义结构体类型的同时定义结构体变量
一般形式:
struct 结构体名
{
类型标识符成员名;
类型标识符成员名;
…………….
}变量名表列;
例 struct student
{ int num;
char name[20];
char sex;
int age;
float score;
char addr[30];
}stu1,stu2;
直接定义结构体变量
一般形式:
struct
{
类型标识符成员名;
类型标识符成员名;
…………….
}变量名表列;
例 struct
{ int num;
char name[20];
char sex;
int age;
float score;
char addr[30];
}stu1,stu2;
用无名结构体直接定义
变量只能一次
说明
结构体类型与结构体变量概念不同
类型:不分配内存; 变量:分配内存
类型:不能赋值、存取、运算; 变量:可以
结构体可嵌套
结构体成员名与程序中变量名可相同,不会混淆
结构体类型及变量的作用域与生存期
例 struct date
{ int month;
int day;
int year;
};
struct student
{ int num;
char name[20];
struct date birthday;
}stu;
num
name
birthday
month
day
year
例 struct student
{ int num;
char name[20];
struct date
{ int month;
int day;
int year;
}birthday;
}stu;
num
name
birthday
month
day
year
结构体变量的引用
引用规则
结构体变量不能整体引用,只能引用变量成员
可以将一个结构体变量赋值给另一个结构体变量
结构体嵌套时逐级引用
成员(分量)运算符
优先级: 1
结合性:从左向右
引用方式:
例 struct student
{ int num;
char name[20];
char sex;
int age;
float score;
char addr[30];
}stu1,stu2;
=10;
=;
+=;
++;
例 struct student
{ int num;
char name[20];
char sex;
int age;
float score;
char addr[30];
}stu

自定义数据类型 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数52
  • 收藏数0 收藏
  • 顶次数0
  • 上传人54156456
  • 文件大小696 KB
  • 时间2018-11-29
最近更新