Я пытаюсь записать некоторую информацию в файл на C и никогда не сталкивался с проблемой раньше. Тем не менее, теперь он, кажется, ломается при записи содержимого переменной в файл. Вот что у меня есть.
int i, count = 0;
FILE *f;
int _x, _y, _z, _x2, _y2, _z2;
for (i = 0; i < HEIGHT * WIDTH*3; i+= 3)
{
if (buffer1[i/3] < MAGIC_VALUE)
{
count++;
}
if (buffer2[i/3] < MAGIC_VALUE)
{
count++;
}
}
printf("Count = %d\n", count); // prints correctly...
f = fopen("file.abc", "w");
fprintf(f, "lots\n of\n text\n");
fprintf(f, "count: %d\ntext \ntext y\ntext text text", count); // crashes here
fprintf(f, "\nend");
fclose(f);
Почему эта линия рушится? Это заканчивается в dbghook.c в строке, которая говорит _debugger_hook_dummy = 0;
Происходит сбой при печати count
в файл, но если я вычеркну этот отпечаток, произойдет сбой при печати последнего оператора. Первый, кажется, печатается нормально, хотя ..
Когда я печатаю ошибку, я получаю «Слишком много открытых файлов»