предупреждение: слишком много аргументов для формата - fprintf - PullRequest
1 голос
/ 16 февраля 2012
    pthread_t      writeToFile = pthread_self ();
    unsigned short iterate;

    for (iterate = 0; iterate < 10000; iterate++)
    {
        fprintf (fp, " %d ",  iterate,     4);
        fprintf (fp, " %lu ", writeToFile, sizeof (pthread_t));
        fprintf (fp, "\n",    writeToFile, 1);
    }

В main () fp = fopen ("xyz", "w");

Предупреждение: warning: too many arguments for format

Отсюда: http://www.cplusplus.com/reference/clibrary/cstdio/fprintf/

Что не так в моем коде?

gcc version 4.5.0

1 Ответ

3 голосов
/ 16 февраля 2012

Давайте возьмем ваше первое fprintf: " %d ".он ожидает один аргумент (целое число), но вы даете ему два - итерацию и 4.

Кажется, что вы добавляете размер данных, но вы не должны.Вероятно, это должно быть:

fprintf (fp, " %d ",  iterate);

В двух других предложениях даже не ясно, что вы хотите поместить в файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...