LINUX.ORG.RU

To fopen() or to open()? :)


0

0

Вот дурацкая дилемма возникла. Нужно один и тот же файл открывать либо для чтения, либо для записи. Чтение очень удобно делать построчно, что позволяет без проблем функция fgets(). Она принимает FILE* и вроде бы все прекрасно. Но проблема в том, что файл нужно открывать с пермиссиями 0700, а этого fopen() делать не умеет, а умеет это делать функция open().
Но open() возвращает файловый дескриптор, для которых нет такого удобного способа производить построчное чтение. Делать же fopen(); fchmod() не хочется, т.к. хочется атомарности...

Поможите, плиз :) Если где не прав, прошу указать, не пиная.
Может быть, использовать унион для хранения одновренно файлового дескриптора и указателя FILE* и использовать эту унион соответственно?..

Заранее благодарен.

anonymous

Спасибо!

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.