struct和typedef struct有什么区别?

如题所述

C语言结构体中struct和typedef struct区别为:声明不同、访问不同、重新定义不同。

一、声明不同

1、struct:struct可以直接使用结构体名字声明结构体。

2、typedef struct:typedef struct的为。修饰结构体,结构体有了别名,通过结构体别名声明结构体。

二、访问不同

1、struct:struct定义的结构体变量,可直接访问结构体成员。

2、typedef struct:typedef struct定义的结构体变量,不可直接访问结构体成员,必须显式的通过结构体变量来访问成员。

三、重新定义不同

1、struct:想重新定义struct结构体的话,必须重写整个结构体。

2、typedef struct:想重新定义typedef struct结构体的话,可以通过别名来继承结构体进行重新定义。

温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜