C中格式字符串未使用的数据参数

时间:2015-11-24 15:09:51

标签: c string printf

所有printf语句都有错误说明:

  

格式字符串不使用数据争论。

我在互联网上环顾四周,发现了一些相关的东西,但是我并没有完全理解这个解决方案,希望也许有人可以进一步解释。

void displayPuzzle()
{
int i, j;
char x = 'A';

for (i = 0; i < COLOUMNS; i ++)
{
    printf("%c  ", x); //error here
    x++;
}
printf("\n\n");
for (i = 0; i < ROWS; i ++)
{
    printf("%d\t", i); //error here
    for (j = 0; j < COLOUMNS; j ++)
    {
        printf("%c  ", puzzle[i][j]); //error here
    }
    printf("\n\n");
}

}

1 个答案:

答案 0 :(得分:5)

printf的格式字符串说明符使用%来表示格式说明符的开头,而不是&

void displayPuzzle()
{
    int i, j;
    char x = 'A';

    for (i = 0; i < COLOUMNS; i ++)
    {
        printf("%c  ", x);
        x++;
    }
    printf("\n\n");
    for (i = 0; i < ROWS; i ++)
    {
        printf("%d\t", i); 
        for (j = 0; j < COLOUMNS; j ++)
        {
            printf("%c  ", puzzle[i][j]); 
        }
        printf("\n\n");
    }

}