C程序警告:格式不是字符串文字,也没有格式参数
我正在使用-C程序警告:格式不是字符串文字,也没有格式参数,c,ubuntu,gcc,char,printf,C,Ubuntu,Gcc,Char,Printf,我正在使用- char str[200]; ... sprintf(str,"%s", val) msg(str); sprintf(str, "%s: %s",timestr,"\n recv -"); msg(str); ... } void msg(const char str[]) { ... fprintf(fp, str); ... } 警告:格式不是字符串文字,也没有格式参数 如何解决此问题?如果要打印常量字符串,请不要使用fprintf() 使用 如果您觉得必须使
char str[200];
...
sprintf(str,"%s", val)
msg(str);
sprintf(str, "%s: %s",timestr,"\n recv -");
msg(str);
...
}
void msg(const char str[])
{
...
fprintf(fp, str);
...
}
警告:格式不是字符串文字,也没有格式参数
如何解决此问题?如果要打印常量字符串,请不要使用fprintf()
使用
如果您觉得必须使用
fprintf()
,请添加格式化字符串,即使用fprintf(fp,“%s”,str)代码>您需要更改
fprintf(fp, str);
到
在代码中,缺少格式说明符“%s”
有关详细信息,请查看fprintf()
的手册页。@KK-oh是吗?如果你能告诉我原因,那就太好了。可能是
fprintf(fp, "%s", str);
^
|