typedef的用法结构体

Posted

tags:

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

typedef的用法结构体如下:

用在旧的C代码中,帮助struct。以前的代码中,声明struct新对象时,必须要带上struct,即形式为: struct 结构名对象名,如:

struct tagPOINT1

int x;

int y;

;

struct tagPOINT1p1;

而在C++中,则可以直接写:结构名对象名,即:tagPOINT1 p1;

typedef structtagPOINT

int x;

int y;

POINT;

POINT p1; // 这样就比原来的方式少写了一个struct,比较省事,尤其在大量使用的时候,或许,在C++中,typedef的这种用途二不是很大,但是理解了它,对掌握以前的旧代码还是有帮助的,毕竟我们在项目中有可能会遇到较早些年代遗留下来的代码。

扩展资料:

typedef的作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。在编程中使用typedef目的通常有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。

可以用struct tagMyStruct varName来定义变量,但要注意,使用tagMyStruct varName来定义变量是不对的,因为struct 和tagMyStruct合在一起才能表示一个结构类型。

参考资料来源:

百度百科-typedef

参考技术A

typedef是类型定义的意思。typedef struct 是为了使用这个结构体方便。

具体用法如下:

①在C中定义一个结构体类型要用typedef:

typedef struct Student

int a;

Stu;

②于是在声明变量的时候就可:Stu stu1;

如果没有typedef就必须用struct Student stu1;来声明。

这里的Stu实际上就是struct Student的别名。

另外这里也可以不写Student(于是也不能struct Student stu1;了)

typedef struct

int a;

Stu;

于是就定义了结构体类型Student,声明变量时直接Stu stu2;

扩展资料

typedef用法

①使用typedef为现有类型创建别名,定义易于记忆的类型名

typedef int size;

void measure(size*psz);

size array[4];

size len=file.getlength();

std::vector<size>vs;

②隐藏指针语法

typedef char* pstr;

int mystrcmp(const pstr p1,const pstr p3);

参考资料来源:百度百科-typedef

以上是关于typedef的用法结构体的主要内容,如果未能解决你的问题,请参考以下文章

C语言中typedef定义结构体指针的区别?

在程序中用typedef定义结构体

数据结构之typedef在结构体中的用法

求解答c语言结构体定义中typedef的作用

C语言结构体中struct和typedef struct有啥区别?

在标准C中,typedef 一样的结构体取两个不同的别名,编译会报错吗?怎么解决?