Typedefstruct声明

Typedefstruct声明,第1张

概述这两个声明有什么区别,如果有人可以详细解释: typedef struct atom { int element; struct atom *next;}; 和 typedef struct { int element; struct atom *next;} atom; typedef的目的是给一个类型规范的名字.语法是: typedef <specification> <n 这两个声明有什么区别,如果有人可以详细解释:
typedef struct atom {  int element;  struct atom *next;};

typedef struct {  int element;  struct atom *next;} atom;
解决方法 typedef的目的是给一个类型规范的名字.语法是:
typedef <specification> <name>;

完成之后,您可以使用< name>很像任何内置类型的语言来声明变量.

在你的第一个例子中,你的< specification>是从struct atom开始的一切,但是没有< name>之后所以你没有给类型规范一个新的名字.

在结构声明中使用名称与定义新类型不同.如果要使用该名称,则必须先使用struct关键字.所以如果你声明:

struct atom {    ...};

您可以使用以下命令声明新变量:

struct atom my_atom;

但是你不能简单地声明

atom my_atom;

对于后者,你必须使用typedef.

请注意,这是C和C之间的显着区别之一.在C中,声明一个结构体或类类型允许您在变量声明中使用它,您不需要typedef. typedef在C中对于其他复杂类型的构造(如函数指针)仍然有用.

您应该可以在“相关”侧栏中查看一些问题,并解释其中的一些细节.

总结

以上是内存溢出为你收集整理的Typedef / struct声明全部内容,希望文章能够帮你解决Typedef / struct声明所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1250928.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存