【发布时间】:2011-02-14 11:31:55
【问题描述】:
这里src_addr是char[16]类型,ptr->ip.ip_src.s_addr用于访问我分配时在网络中流动的数据包的源地址
keys.dst_addr = ((ptr->ip.ip_dst.s_addr)&(0x0FF<<(i*8)))>>(i*8) ;
我曾经遇到过错误
错误:从类型“in_addr_t”分配给类型“char[16]”时类型不兼容
所以我以这种形式分配它使用inet_ntoa转换了源地址这是正确的方法吗?我仍然在这一行中遇到错误
keys.src_addr = inet_ntoa (ptr->ip.ip_src.s_addr);
【问题讨论】:
-
Keys 和 ptr->ip 是否属于同一类型?
-
@gunner: key ia 是一个结构体,ptr 是指向结构体 ip 的指针,结构体 ip 的成员是 struct in_addr ip_src,ip_dst
-
如果你能发布结构的定义会很有帮助。
标签: c