C语言中的类型转换

C语言中的类型转换,c,casting,C,Casting,在我的代码中,我得到以下错误: expected ‘const void *’ but argument is of type ‘struct in_addr’ 我正在使用memcmp是否可以将caststruct in_addr键入const void*作为const void*(struct in_addr)您需要强制转换对象的地址,而不是对象本身: (const void *)&my_obj 但事实上,此类强制转换是隐式的,因此您可以使用: &my_obj 您需要强制

在我的代码中,我得到以下错误:

expected ‘const void *’ but argument is of type ‘struct in_addr’
我正在使用
memcmp
是否可以将cast
struct in_addr
键入
const void*
作为
const void*(struct in_addr)
您需要强制转换对象的地址,而不是对象本身:

(const void *)&my_obj
但事实上,此类强制转换是隐式的,因此您可以使用:

&my_obj
您需要强制转换对象的地址,而不是对象本身:

(const void *)&my_obj
但事实上,此类强制转换是隐式的,因此您可以使用:

&my_obj

Ed S@memcmp(const void*&((*temp.pktFltr.ip.ip_src),const void*&(ptr_fltr->pktFltr.ip.ip_src),32);我有一个错误:错误:在'const'之前应该有一个表达式错误:函数'memcmp'的参数太少@memcmp(const void*&((*temp.pktFltr.ip.ip_src),const void*&(ptr_fltr->pktFltr.ip.ip_src),32);我有一个错误:错误:在'const'之前应该有一个表达式错误:函数'memcmp'的参数太少(const void*&((*temp.pktFltr.ip.ip_src),const void*&(ptr_fltr->pktFltr.ip.ip_src),32);我发现了一个错误:错误:在'const'之前需要表达式错误:函数'memcmp'@asir的参数太少,强制转换需要在它们周围加括号
(const void*)
@asir:另外,请注意下面的简单语法。
@
位于人名之前。代码应该放在背景标记中,以便它像那样突出,以便更容易捕获。Oli Charlesworth@memcmp(const void*&((*temp.pktFltr.ip.ip_src),const void*&(ptr_fltr->pktFltr.ip.ip_src),32);我发现了一个错误:错误:在'const'之前需要表达式错误:函数'memcmp'@asir的参数太少,强制转换需要在它们周围加括号
(const void*)
@asir:另外,请注意下面的简单语法。
@
位于人名之前。代码应该放在背景标记中,以便它像那样突出,更容易捕获。