Если два файловых указателя указывают на один и тот же файл, достаточно ли закрытия одного из них?
Если у меня есть два файловых указателя и я делаю следующее:
FILE *f1,*f2;
f1= fopen("inputfile","r+");
f2=f1;
fclose(f2);
Действительна ли операция равенства, если она есть, будет ли последняя строка также закрывать f1?
1 ответ
Решение
Достаточно, оба будут закрыты, и оба будут указывать на закрытый файл.
Назначение f2=f1
не делает ничего волшебного (увеличение счетчика ссылок или дублирование дескрипторов).