Как закрыть файловый дескриптор, открытый функцией mkstemp ()?

Модератор: Модераторы разделов

Аватара пользователя
жучара
Сообщения: 658
ОС: астралинукс

Как закрыть файловый дескриптор, открытый функцией mkstemp ()?

Сообщение жучара »

Друзья!

Код: Выделить всё

#include <stdio.h>
#include <stdlib.h>

int main ()
{
    char x [] = "XXXXXX";
    int xx = mkstemp(x);
    printf ("%s\n", x);
    printf ("%d\n", xx);
    fclose ((FILE*) xx);
}
Вывод:

Shell

$ ./a.out
0gqtNJ
3
Ошибка сегментирования
Всё. Как закрывать файловый дескриптор, непонятно. В man mkstemp об этом ни слова, написано только
...returns an open file descriptor for the file
Спасибо, кто откликнется.
Я просто читаю маны.
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 18483
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: Как закрыть файловый дескриптор, открытый функцией mkstemp ()?

Сообщение Bizdelnick »

Как и любой другой.

Код: Выделить всё

close(xx);
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали: