您能否帮助我解决以下投射错误。这是我的代码:

int (*hook_parse) (netsnmp_session *, netsnmp_pdu *,u_char *, size_t);
.
.
netsnmp_pdu* tpdu=NULL;
.
.
char buf[65537]="", sep='|', sep1[]="bc_sep1";
.
.
buf[tpdu->community_len] =sep;
buf[tpdu->community_len] =sep1;   //This Line gives error


我得到的错误是:

api.c:: warning: assignment makes integer from pointer without a cast


对于sep我没有得到这样的错误,但是对于sep1这是一个字符串,我遇到了上面的错误。

最佳答案

buf是字符数组。
sep是一个字符。
sep1是字符数组。

buf[x]是数组中的元素(一个字符)。

您可以将字符(sep)分配给字符数组元素。
您不能将另一个数组(sep1)分配给字符数组元素。

09-04 17:00