gpt4 book ai didi

c - 为什么 sizeof run on struct 必须有括号

转载 作者:太空宇宙 更新时间:2023-11-04 02:46:29 24 4
gpt4 key购买 nike

<分区>

所以我试图在我的 C 程序中获取结构的大小并编写以下代码:

typedef struct Msg_Header Msg_Header; // the struct Msg_Header was defined earlier

int size = sizeof Msg_Header;

这产生了一个我无法理解的编译错误。为了让它工作,我发现我必须像这样使用括号:

int size = sizeof(Msg_Header);

这很奇怪,因为 sizeof 可以完美地处理简单的变量类型,比如没有括号的 int,当我使用 struct Msg_Header 而不是别名时,同样奇怪的行为会发生。

谁能解释一下这是怎么回事?

编辑:编译错误说:“Msg_Header 之前的预期表达式”

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com