Почему данные записываются в файл, хотя буфер не заполнен, когда программа заканчивается? [дублировать]Linux

Anonymous
Почему данные записываются в файл, хотя буфер не заполнен, когда программа заканчивается? [дублировать]

Сообщение Anonymous »

Я ожидал, что без вызова fclose (), и с тем, что буфер не будет заполнен, в файл ничего не будет записано. Но когда программа заканчивается, данные все еще появляются в файле.
или время выполнения C автоматически промывает любые буферизованные данные в пункт назначения
и закрывает все открытые файлы в конце программы?#include
#include

int main() {
FILE *fp = fopen("file.txt", "w");

char buffer[1024];
setvbuf(fp, buffer, _IOFBF, sizeof buffer);

int i = 1;
while (i

Подробнее здесь: https://stackoverflow.com/questions/795 ... n-the-prog

Вернуться в «Linux»