C89:论结构体/枚举体/联合体的使用

Posted k5bg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C89:论结构体/枚举体/联合体的使用相关的知识,希望对你有一定的参考价值。

一.Struct

1.struct的作用

一般用在多种不同数据类型集合里面,便于代码整洁,用于封装便于再次利用

struct默认是public,class默认是private

 

2.struct的使用

1.有结构名
struct A
    ...
;
 
Struct A a;
 
2.有结构名和结构对象
struct A
    ...
O;
 
Struct A a;
 
 
3.只有结构对象
struct
    ...
O,Array[100],*pO,;
 

 

//struct不能调用自身的对象,只能使用引用和指针指向自身
 
struct A
    A a;  //错误

 
struct A
    A* a;    //正确

 
struct A
    A& a;    //正确

 

二.Typedef

1.Typedef的作用

可以给结构体起一个别名

 

2.Typedef的使用

//1.只有结构名
typedef struct A
   ...

 
struct A a;
 
//2.结构名和结构类型(主要这里不是对象,对象可以直接引用,类型必须实例化对象)
typedef struct A
    ...
O;
 
O o;    //起别名
 
//3.只有结构类型
typedef struct
   ...
O;
 
O o;

 

三.枚举值

枚举值都是整型变量

 

四.联合体

共用一份成员变量的最大内存空间

 

以上是关于C89:论结构体/枚举体/联合体的使用的主要内容,如果未能解决你的问题,请参考以下文章

详解C语言结构体枚举联合体

“解剖”c语言——自定义类型(结构体,位段,枚举,联合体)

结构体struct-联合体union-枚举enum

c语言篇 +自定义类型(枚举联合结构体)以及位段

自定义类型详解(结构体,枚举,联合体)

自定义类型:结构体,枚举,联合