C 空字符常量-格式[-Wformat extra]的参数太多-
我正在用C(EclipseIDE)编写代码,但遇到了这个错误 代码是C 空字符常量-格式[-Wformat extra]的参数太多-,c,C,我正在用C(EclipseIDE)编写代码,但遇到了这个错误 代码是 { printf("\nYour hat size is %c%c%c%%c\n",size[0][i],size[1][i],(size[1][i] == '') ? '':'/', size[2][i]); } 考虑到数组索引在分配的范围内,请首先注意: %c%c%%c只有三个占位符。前三个%c将被printf各自的三个参数替换,下一个是%c,它将为字符串中的%%打印一个百分号%,然后简单地打印c。尽管这会导致警告 还有
{
printf("\nYour hat size is %c%c%c%%c\n",size[0][i],size[1][i],(size[1][i] == '') ? '':'/', size[2][i]);
}
考虑到数组索引在分配的范围内,请首先注意:
%c%c%%c
只有三个占位符。前三个%c
将被printf
各自的三个参数替换,下一个是%c
,它将为字符串中的%%
打印一个百分号%
,然后简单地打印c
。尽管这会导致警告
还有
'
,它是空字符常量,因此会抛出一个错误。如果你是指空格,那么就执行'
;如果你是指字符串结尾的空字符,那么执行'\0'
看起来像一个打字错误%%c
应该是%c
?对。没有空字符。printf(“\n您的帽子大小是%c%c%c\n”、大小[0][i]、大小[1][i]、(大小[1][i]='')、”:/”、大小[2][i];@Domi:在上一条评论中您仍然有空字符。您希望与大小[1][i]
的内容进行什么比较?