Очистка файлов fopen (), открытых в режиме обновления, между операциями чтения и записи. Требуется явная очистка?

Я прочитал это о переключении между операциями чтения и записи (и наоборот) для файлов, открытых для обновления с помощью (fopen()ССЫЛКА НА САЙТ)"

Для файлов, открытых для обновления (те, которые включают «+» знак), при котором разрешены обе операции ввода и вывода, поток должен быть сброшен (fflush) или перемещен (fseek, fsetpos, rewind) между операцией записи, за которой следует операция чтения, или операцией чтения, которая не достигла конца -файла с последующей операцией записи. "

Есть две вещи, упомянутые здесь, которые я хотел бы выделить

поток должен быть очищен (fflush) или изменен (fseek, fsetpos, rewind)между операцией записи, сопровождаемой операцией чтенияили операция чтения, которая не достигла конца файла, сопровождаемая операцией записи.

1) Что касается первого пункта, мыэксплицитно необходимо выполнить очистку между операцией записи и чтения. Я имею в виду, предположим, если мы намереваемся записать в новый файл, а затем прочитать его обратно. В этом случае с помощьюfseek() или жеrewind() чтобы получить начало файла после записи, имеет смысл, и в качестве побочного эффекта он очистит буфер. Но я хочу знать, что произойдет, если мы обновляем / перезаписываем первую часть уже существующий файл с новыми данными, но как только мы это сделаем, мы хотимнемедленно начните читать оставшиеся старые данные с этой точки? Нужно ли использовать что-то вродеfseek(pFile,0,SEEK_CUR) так что мы очищаем буфер дляwrite-read переход, и в то же время, неизменить положение указателя файла? Такая же путаница возникает и со вторым сценарием, когда мы хотим прочитать первую половину файла, исразу после этого хочу начать писать там. Пожалуйста, ответьте на это.

2) Вторая часть оreading operation which did not reach the end-of-file кажется, подразумевает, что если операция чтения достигает конца файла, и мы намереваемся записать после этого, мы недля этого не нужно очищать буферread-write переход. Можете ли вы подтвердить, чтоЧто это значит? Толькоwrite-read переход нуждается в промывке, а неread-write переход, особенно если чтение достигло конца файла?

Ответы на вопрос(1)

Ваш ответ на вопрос