Добрый день!
Представим себе ситуацию: с помощью fwrite() в файл последовательно пишется несколько порций данных. Будет ли приведенный ниже код работать корректно (и почему?) при возникновении ошибки ввода-вывода (например, кончилось место на диске) или нужно проверять каждый вызов fwrite()?
fwrite(&data1, sizeof(data1), 1, file);
fwrite(&data2, sizeof(data2), 1, file);
fwrite(&data3, sizeof(data3), 1, file);
if(ferror(file)) {
/* Обработка ошибки. */
}