gpt4 book ai didi

c - C语言编译后出错

转载 作者:行者123 更新时间:2023-11-30 16:02:37 26 4
gpt4 key购买 nike

我已将所有结构放入名为 structure.h 的头文件中:

struct mac_filter { 
u_char ether_dhost[ETHER_ADDR_LEN];
u_char ether_shost[ETHER_ADDR_LEN];
u_short ether_type;
}__attribute__ ((packed));

当我编译 Structure.h 时,出现以下错误:

error: expected specifier-qualifier-list before ‘u_char’
u_char ether_dhost[ETHER_ADDR_LEN];(line at which there is an error )

error: expected specifier-qualifier-list before ‘u_int16_t’
u_int16_t uh_sport;(line at which there is an error )

如何解决这些错误?

最佳答案

如果它在您开始移动之前就有效,很可能是因为当时尚未定义 u_charu_int16_t。 p>

暂时将类型更改为 int 并查看问题是否消失(尽管您可能会因此看到其他问题)。

如果是这样,请将它们改回并确保在尝试使用它们之前已定义类型。例如,检查 header 是否按正确的顺序包含来执行此操作。如果您发布代码,那么准确地告诉您如何修复它会更容易。

<小时/>

我犹豫是否要问这个问题,因为这听起来有点居高临下。您实际上并没有尝试自行编译头文件,是吗?我问这个问题只是因为您的“当我编译该 Structure.h 时”评论。如果你是,你就不应该是。您应该编译包含 #include 头文件的 C 文件。

抱歉,如果冒犯了我,那不是我的本意。只是我看到了一些人尝试做的奇妙事情,这对他们来说是有意义的:-)

关于c - C语言编译后出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5087257/

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