C在HP_UX下的编译问题,sizeof(int),报错,急求

shaolou 2009-12-24 01:56:06
如题,

在HP_UX下编译c,
#define CONTROLLEN ( sizeof(struct cmsghdr) + sizeof(int) )
这句报错:sizeof may not be applied to an undefined class.
请问是什么问题??
...全文
148 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
shaolou 2009-12-24
  • 打赏
  • 举报
回复
楼上的,不行的。问题不在这里
主要是现在编译是不认系统库socket.h
hbvanguard 2009-12-24
  • 打赏
  • 举报
回复

//去掉最外层括号 改为
#define CONTROLLEN sizeof(struct cmsghdr) + sizeof(int)
//试试
taodm 2009-12-24
  • 打赏
  • 举报
回复
既然cmsghdr是你定义的,你修改了系统的头文件?
shaolou 2009-12-24
  • 打赏
  • 举报
回复
cmsghdr 是包含在socket.h的头文件里的
taodm 2009-12-24
  • 打赏
  • 举报
回复
那你这个“cmsghdr 我定义了,头文件也包了,socket.h”,这句话的2部分有啥联系?
shaolou 2009-12-24
  • 打赏
  • 举报
回复
socket.h就是系统的库
#include <sys/socket.h>
taodm 2009-12-24
  • 打赏
  • 举报
回复
socket.h?和系统的重名了。
shaolou 2009-12-24
  • 打赏
  • 举报
回复
程序在aix,linux都是用过的,刚移到hp_ux过来,编译就报这个错。找不到问题
shaolou 2009-12-24
  • 打赏
  • 举报
回复
cmsghdr 我定义了,头文件也包了,socket.h
baihacker 2009-12-24
  • 打赏
  • 举报
回复
在使用CONTROLLEN的地方。。。
cmsghdr没有定义撒。。
在使用这个宏的文件里,要把对应的头文件包含。
do_fork 2009-12-24
  • 打赏
  • 举报
回复
cmsghdr定义了吗?

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧