error: parameter name omitted的错误:参数名称省略
void cJSON_fill_buffer(double long, double Lat)
{
//创建一个空的文档(对象)
cJSON *json = cJSON_CreateObject();
cJSON_AddNumberToObject(json,"utcTime", 123.456);
cJSON_AddNumberToObject(json,"carLength", 4.8);
cJSON_AddNumberToObject(json,"carWidth", 2.5);
cJSON_AddItemToObject(json,"licenseNumber",cJSON_CreateString("鲁A123"));
cJSON_AddNumberToObject(json,"velocity", 20);
cJSON_AddNumberToObject(json,"longitude", long);
cJSON_AddNumberToObject(json,"latitude", Lat);
cJSON_AddNumberToObject(json,"altitude", 10);
cJSON_AddNumberToObject(json,"heading", 120);
//将json结构格式化到缓冲区
char *buf_cJSON = cJSON_Print(json);
printf("data:%s\n",buf_cJSON = cJSON_Print(json));
//释放json结构所占用的内存
cJSON_Delete(json);
}
今天在写cJSON相关代码的时候遇到error: parameter name omitted
的问题,找了很久都不知道哪来有问题,后来才知道是函数中的long类型被编译器误以为是长整型的long,以后取名字要注意避开常用变量名,改成Long即可。