Можно ли иметь несколько файлов FILE *, указывающих на один и тот же файл с разными режимами доступа? Например
допустим, я имел fopen("File1.bin","wb",fp1)
и я выполняю операции записи и БЕЗ закрытия файла, используя fclose, я вызываю fopen("File1.bin","rb",fp2)
и попробуйте использовать операции записи на нем. это должно потерпеть неудачу. но fp2 по-прежнему записывает содержимое в него, когда я использую другой режим доступа. Зачем?
fopen () открывает файловый поток, который является абстракцией файла. Конечно, дескриптор файла открывается внизу, но вполне допустимо иметь параллельный доступ к одному и тому же файлу через разные дескрипторы (которые могут даже находиться в разных процессах).
Файл является общим ресурсом.