C语言 结构体 共用体和用户自定义类型
2021-07-14 01:06
标签:自定义数据类型 core 变量 zha arp 必须 day 声明 标识符 基本类型:整型、字符型、实型、双精度型和空值型 派生型:指针和数组 用户构造类型 用户定义类型:对已有的类型,另外说明一个新的类型标识符。 结构体:把具有相互关系的不同类型的数据组成一个有机的整体 共用体:又称联合体,使几种不同类型的变量共用一段存储空间。 14.1 用typedef说明一种新类型名 作用: 用“标识符”来代表已存在的“类型名”,并未产生新的数据类型,原有的类型名依然有效。 例如:typedef int INTERGER; INTERGER m,n; 等价于 int m, n; 如:typedef char *CHARP; CHARP p; 等价于char *p; 14.2 结构体类型 如:一条学生记录(student),包含如下数据项:姓名(name):字符串、性别(sex):字符型、出生日期(birthday):date结构体、四门课成绩(SC):一维实型数组 结构体是一种构造数据类型 用途:把不同类型的数据组合成一个整体——自定义数据类型 结构体类型的变量、数组和指针变量的定义 1.紧跟类型说明之后定义变量 结构体变量中的各成员在内存中按说明的顺序依次存放 2.声明无名结构体时直接定义变量,即将其中的student省略掉 结构体嵌套定义 3.先声明结构体类型,再使用类型定义变量 struct student { ………… }; struct student std, pers[3], *pStd; 4.使用typedef重新声明一个结构体类型名,然后用新类型名字定义变量 结构体类型的变量、数组赋初值 1.结构体变量赋初值 C语言 结构体 共用体和用户自定义类型 标签:自定义数据类型 core 变量 zha arp 必须 day 声明 标识符 原文地址:https://www.cnblogs.com/pangtao/p/9541284.html
typedef 类型名 标识符;struct student
{
char name[20];
struct date birthday;
char sex;
int score[4];
}std, pers[3], *pStd;
struct date
{
int year;
int month;
int day;
};
struct student
{
char name[20];
struct data birthday;
char sex;
int score[4];
};
struct student
{
char name[20];
struct
{
int year;
int month;
int day;
}birthday;
char sex;
int score[4];
};
typedef struct
{
……
}student;/Student 是结构体的类型的一个新名字而已,如 int char 他们一样,不用再写struct
student std, pers[3], *pStd;
struct date
{
int year;
int month;
int day;
};
struct student
{
char name[20];
char sex;
struct date birthday;
float score[4];};
struct student
std1={"Li Ming",‘M‘,1992,10,1,95.5,60,70,88.5},
std2={"Liu Qiang", ‘M‘, {1995,10,1},{95.5,60,70,88.5}},
std3={"Zhang Ya",‘F‘, {1995},{95.5,60}};