首页 > 编程知识 正文

结构体定义的三种形式,定义结构体时有下面几种说法

时间:2023-05-03 16:01:41 阅读:259538 作者:4685

最近一直研究结构体,整理几种结构体定义方式:


1、最常用定义方式:定义结构体data,此时结构体相当于一个类型,比如int,如需使用此结构体,方法同int

struct data
{
    char aa;
    char bb;
    char cc;
    int dd;

};

    struct data sum1, sum2;


2、定义结构体data同时,定义需要使用的结构体变量sum1,sum2。如后面再需要定义结构体变量,方法同1

struct data
{
    char aa;
    char bb;
    char cc;
    int dd;
}sum1, sum2;

    struct data sum3;


3、定义结构体时,结构体名称缺省,同时定义结构体变量sum1,sum2。但后面不可再定义结构体变量!

struct
{
    char aa;
    char bb;
    char cc;
    int dd;
}sum1, sum2;

    struct sum3;  <-  编译器报错


4、使用typedef 定义结构体,定义结构体data时,使用typedef,此种形式几乎不使用,再定义结构体变量时,仍需加struct,否则编译器报错!

typedef struct data

{
    char aa;
    char bb;
    char cc;
    int dd;
};

    struct data sum3;


5、使用typedef定义结构体同时,给data结构体别名DATA,后续定义可不用使用struct data,直接使用DATA即可。

typedef struct data
{
    char aa;
    char bb;
    char cc;
    int dd;
}DATA;

    struct data sum3; <- 可用,但不推荐

    DATA sum1; <- 最常用方式


6、使用typedef定义结构体时,省掉结构体第一个别名data,直接在后面加DATA,使用方法同5。

typedef struct
{
    char aa;
    char bb;
    char cc;
    int dd;
}DATA;

    DATA sum3;



版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。