c语言——结构体

本文详细介绍了C语言中结构体的定义、使用、成员访问,共用体的功能及在检测设备大小端的应用,以及枚举关键字用于定义整型常量的特性。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

c语言——结构体


1.结构体:存放不同类型的成员

和结构体相关的关键字 – struct

1》结构体数据类型的定义格式:
struct 结构体类型名{
成员;
};
struct :结构体的标志
struct 结构体类型名:新的构造的数据类型
struct 结构体类型名 类似于 int,char 仅仅是一个数据类型
定义完数据类型,没有空间

2》结构体的使用
定义方式:
a)先定义类型,之后定义变量
第一步,仅仅定义一个数据类型
struct Fruit{
char name[20];
float price;
};
第二步,定义变量
struct Fruit F1;
struct Fruit F2;
struct Fruit F3;

b)定义类型,同时定义变量
struct Fruit{
char name[20];
float price;
}F1,F2;
struct Fruit F3;

c)无名结构体 --只能定义类型的同时定义变量
struct{
char name[20];
float price;
}F1,F2;

**结构体取成员**

a)结构体普通变量取成员,用.
格式:结构体变量名.成员名
含义:变量名里面的XX成员,最终得到的是XX成员
struct Stu{
char name[20];
int ID;
float score;
};
struct Stu stu1;//stu1是struct Stu类型的变量
%s - stu1.name :得到char name[20]
%d - stu1.ID
%f - stu1.score

b)结构体指针变量取成员,用 ->
格式:结构体指针变量名->成员名
含义:结构体指针变量名指向的XX成员,最终得到的是XX成员
struct Stu{
char name[20];
int ID;
float score;
};
struct Stu stu1; //定义变量名
struct Stu *p = &stu1;
取成员:
p->name; – char [20] – %s
p->ID; – int --%d
p->score; --score --%f

2.共用体
关键字:union
union Tag{
成员;
};
含义:所有成员共用同一块空间
取成员方法:和结构体一样
共用体的大小:
第一步:确定对齐方式(和结构体一样)
第二步:只看最大成员,最大成员必须满足对齐方式的整数倍
应用:利用共用体,测试设备大小端。(大小端可自己百度)
在这里插入图片描述

测试大小端的目的:保证不同设备之间数据传输的准确性!

3.枚举
关键字:enum
含义:定义整型常量,一个整型常量的集合
一般使用:
enum {a,b,c,d,e,f};
含义:
a = 0;
b = 1;
c = 2;
。。。。
f = 5;
直接使用a,b,,,,即可,a的值就是0,b的值就是1,后面依次+1即可,(a,b,…都是整型常量)
特殊用法:
enum {a,b,c=100,d,e,f};
a = 0;
b = 1;
c = 100;
d = 101;
e = 102;
f = 103;
直接使用a,b,,,,即可,a的值就是0,b的值就是1,c的值是100,后面依次+1即可,(a,b,…都是整型常量)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值