结构体专题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了结构体专题相关的知识,希望对你有一定的参考价值。
===定义结构体的两种方法:=========================================
第一种:
struct 结构体名{
成员列表
}变量名列表;
第二种://省略了结构体名,直接定义结构体变量
struct{
成员列表
}变量名列表;
===举例:===========================================
第一种定义方法
(1)声明结构体类型
struct 高三班级 {
语文课代表
数学课代表
……
历史课代表
}
(2)定义结构体变量
struct 高三班级 高三1班 ,高三2班;
或者直接写成
struct 高三班级 {
语文课代表
数学课代表
……
历史课代表
}高三1班 ,高三2班;
(3)使用
高三1班.语文课代表=XXX;
高三1班.数学课代表=XXX;
......
--------------------------
第二种定义方法
(1)声明结构体类型
struct {
语文课代表
数学课代表
……
历史课代表
}高三1班 ,高三2班;
(2)使用
高三1班.语文课代表=XXX;
高三1班.数学课代表=XXX;
===typedef用法============================================================
定义:申明新的内型名代替已有的内型名
也就是typedef ABCD XYZ,这样XYZ就完全替代了ABCD了
------------------
typedef struct { //注意此处不再有 高三班级(我也不知道为什么省略,采用了方式二定义?还是为了C语言的简洁?)
语文课代表
数学课代表
……
历史课代表
} SBATNND
此时SBATNND就完全代替了整个结构体,直接定义变量
SBATNND 高三1班 ,高三2班;
就可以了,等价于
struct {
文课代表
数学课代表
……
历史课代表} 高三1班 ,高三2班;
---------------------------------为什么就不能带结构体名字(高三班级)----------------------慢慢找原因
要不然也就等价于
struct 高三班级 高三1班 ,高三2班;
SBATNND 就等价于 struct 高三班级
以上是关于结构体专题的主要内容,如果未能解决你的问题,请参考以下文章
ZZNUOJ_用C语言编写程序实现1188:选票统计(结构体专题)(附完整源码)
ZZNUOJ_用C语言编写程序实现1181:谁的年龄最小(结构体专题)(附完整源码)
ZZNUOJ_用C语言编写程序实现1184:平面点排序(结构体专题)(附完整源码)
ZZNUOJ_用C语言编写程序实现1180:成绩统计(结构体专题)(附完整源码)