Я знаю, что это будет довольно глупый вопрос, но после прочтения так много документа о всей «буферной» системе, я не могу понять, почему люди будут очищать поток, но не буфер.Почему мы очищаем поток, но не буфер?
Я видел, что люди пишут вещи, как это:
FILE* file=fopen("mytext.txt","wr");
char buffer[10]="";
setbuf(file,buffer);
//do some stuff....
fflush(file);
....
fclose(file);
Так интересно, так как мы на самом деле хранить вещи в буфере, почему мы промывать поток он связан с, а не очищать буфер непосредственно, , который на самом деле что-то хранит и должен быть покраснел. (Ну, некоторые люди говорят мне, что если все будет похоже на то, что я сказал, это будет то же самое, что и я сам себя беспокою ......)
Например, мы не можем писать такие вещи, как fflush(buffer)
. Почему?
В вашем доме вы говорите «очистить фекальную материю» или «смыть туалет»? :-) Промывка - это свойство туалета/потока, а не цензуры/данных. – paxdiablo
не относится: '' wr '' ??, shoud be 'char buffer [BUFSIZ];' – BLUEPIXY
@milleniumbug '' wr '' и '' rw "' оба являются недопустимыми файловыми режимами. – BLUEPIXY