gpt4 book ai didi

c - 警告 : improper pointer/integer combination: op "="

转载 作者:太空宇宙 更新时间:2023-11-04 05:00:25 25 4
gpt4 key购买 nike

我在 Solaris 中编译 C 程序并收到此警告。

line 68: warning: improper pointer/integer combination: op "="

我的代码包含

struct cmsghdr  *cmsg;

第68行是

cmsg = CMSG_FIRSTHDR(&msg);

结构cmsghdr和CMSG_FIRSTHDR在socket.h中定义为

#define  CMSG_FIRSTHDR(m)
--
--

struct cmsghdr {
socklen_t cmsg_len;
int cmsg_level;
int cmsg_type;
};

我在我的代码中包含了 socket.h。但我仍然收到此错误。

最佳答案

CMSG_FIRSTHDR 宏可能没有进行正确的类型转换,所以您必须自己做:

cmsg = (struct msghdr *) (CMSG_FIRSTHDR(&msg));

也可能是宏本身内部存在一些不正确的转换,在这种情况下您无能为力,因为它在系统头文件中。

关于c - 警告 : improper pointer/integer combination: op "=",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10993036/

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