问题描述
|
在libxml和c中工作,我有以下代码片段:
if (!xmlStrcmp(cur->name,(const xmlChar *)\"headline\")) {
key = xmlNodeListGetString(doc,cur->xmlChildrenNode,1);
conf_var.headline=key;
xmlFree(key);
}
elseif (!xmlStrcmp(cur->name,(const xmlChar *)\"para\")) {
key = xmlNodeListGetString(doc,1);
conf_var.para=key;
xmlFree(key);
}
编译时,出现以下错误:Things.c:29:59:error:预期的';'在'{'标记之前
所代表的行是elseif行。我真的不知道这里出了什么问题,因为if命令中恰好在上面的同一段代码起作用。这怎么了
解决方法
C中没有
elseif
。它是'2ѭ。
, C语言中没有“ 1”,因此编译器认为这是一条语句并等待终止符(“ 4”)。
请改用else if
。