在我的代码我得到这个错误:类型转换用C
expected ‘const void *’ but argument is of type ‘struct in_addr’
我使用memcmp
我可以类型转换struct in_addr
到const void*
作为const void * (struct in_addr)
在我的代码我得到这个错误:类型转换用C
expected ‘const void *’ but argument is of type ‘struct in_addr’
我使用memcmp
我可以类型转换struct in_addr
到const void*
作为const void * (struct in_addr)
你需要转换地址的对象,而不是对象本身:
(const void *)&my_obj
但事实上,这样的演员是implict,所以你可以ju ST用途:
&my_obj
奥利查尔斯沃思@ memcmp(常量无效*((*临时).pktFltr.ip.ip_src) ,const void *&(ptr_fltr-> pktFltr.ip.ip_src),32);我有tyecast它我得到一个错误:错误:在'const'之前的预期表达式 错误:函数'memcmp'太少参数 – asir 2011-02-24 08:33:49
@asir,强制转换需要围绕它们的括号'(const void *)' – 2011-02-24 08:37:31
@asir:也请观察SO的简单语法。 '@'出现在一个人的名字前面。应该将代码放入反引号中,以便它更像“更容易捕获”。 – 2011-02-24 08:40:16
让我们来看看代码... – 2011-02-24 08:12:30
埃德小号@ memcmp(常量无效*((*临时).pktFltr.ip.ip_src),常量无效*&(ptr_fltr-> pktFltr.ip .ip_src),32);我有tyecast它,我得到一个错误:错误:之前“常量” 错误预期表达:参数太少函数“memcmp” – asir 2011-02-24 08:31:13