C编程指针转换错误 - 赋值从指针生成整数而不进行强制转换

时间:2015-06-06 08:56:15

标签: c pointers casting type-conversion

请你帮我解决以下施法错误。这是我的代码:

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 ,这是一个字符串,我遇到上述错误。

1 个答案:

答案 0 :(得分:0)

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

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

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