结构和typedef
发布时间:2020-12-16 05:41:38 所属栏目:百科 来源:网络整理
导读:C中以下等价物? // #1struct myStruct { int id; char value;};typedef struct myStruct Foo;// #2typedef struct { int id; char value;} Foo; 如果不是,我应该使用哪一个? (是的,我看过this和this.) 解决方法 不,他们并不完全相同. 在第一个版本中,Foo是
C中以下等价物?
// #1 struct myStruct { int id; char value; }; typedef struct myStruct Foo; // #2 typedef struct { int id; char value; } Foo; 如果不是,我应该使用哪一个? (是的,我看过this和this.) 解决方法
不,他们并不完全相同.
在第一个版本中,Foo是一个名为struct myStruct的typedef. 在第二个版本中,Foo是一个未命名结构的typedef. 尽管在许多情况下,Foo都可以以相同的方式使用,但存在重大差异.特别地,第二个版本不允许使用前向声明来声明Foo,并且该结构体是一个typedef,而第一个将是. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |