Ошибка подтверждения из-за открытия файла

Мне было интересно, если кто-нибудь может заметить что-то явно очевидное в этом, я получаю ошибку подтверждения при попытке открыть текстовый файл. Я попытался несколько разных способов, чтобы решить эту проблему без удачи. Код:

        FILE *fc;
        fc = fopen("test_text.txt", "w+");
        if(fc == NULL)
        {
              printf("error opening file\n");
        }

       fprintf(fc, "%02x  %02x  %02x  %s", bac_map[0].device_id, bac_map[0].status, bac_map[0].short_addr, bac_map[0].mode);

       for(j = 0; j < object_index; j++)
       {
               fprintf(fc, "             \t %d",bac_map[0].objects_avail[j]);
       }
       fprintf(fc, "\t\t\t\t\t\t\n", bac_map[0].product_id[0]);
       fclose(fc);

Ошибка происходит сразу после "fopen". Другие способы открытия файла, который я пробовал:

     FILE *fc;
     const char* bac = "test_text.txt";
     fc = fopen(bac, "w+");
     .
     .
     .

но я получил ту же ошибку. Этот блок кода также содержится внутри цикла, однако я открываю и закрываю файл на каждой итерации цикла. Кроме того, для целей тестирования я поместил один и тот же блок до и после цикла, чтобы попытаться определить, была ли это причиной проблемы, но не повезло. Кроме того, структура, в которой я сохраняю значения, также кажется хорошей, они печатают с использованием printf. Я не вижу никакой корреляции между открытием файла и структурой, как есть, но, возможно, кто-то еще знает, может ли это вызвать проблему? Любые предложения приветствуются.

0 ответов

Другие вопросы по тегам