空字符常量 - 格式的参数太多[-Wformat-extra-

时间:2013-09-12 03:50:01

标签: c

我在C(Eclipse IDE)中编写代码时出现此错误

代码是

{
printf("\nYour hat size is %c%c%c%%c\n",size[0][i],size[1][i],(size[1][i] == '') ? '':'/', size[2][i]);
}

1 个答案:

答案 0 :(得分:1)

考虑到您的数组索引在分配的范围内,请首先注意:

%c%c%c%%c只有三个占位符。前三个%c将替换为printf的相应三个参数,其次是%%c,它将为%中的%%打印百分号c字符串,然后只需打印''。虽然这会引发警告。

你还有' '这是空字符常量,因此会抛出错误。如果您的意思是空白,那么请'\0';如果你的意思是字符串null字符结束,那么做{{1}}。