blob: 885710c21c7b8a68ed7bf41b030e9d370d997aa3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
.TH MPU_TMPFILE 3 "Август 2026" "libmpuio" "Руководство программиста LIBMPUIO"
.SH ИМЯ
mpu_tmpfile \- создать анонимный временный поток LIBMPUIO реального файла
.SH ОБЗОР
.nf
#include <libmpuio.h>
mpu_FILE *mpu_tmpfile( void );
.fi
.SH ОПИСАНИЕ
.B mpu_tmpfile
создаёт временный POSIX-файл, немедленно удаляет его запись из каталога и
возвращает поток LIBMPUIO реального файла, открытый одновременно для чтения и
записи. Поэтому после успешного создания файл не имеет постоянного имени в
файловой системе и автоматически удаляется после закрытия последнего
дескриптора.
.PP
Возвращаемый поток является обычным потоком LIBMPUIO на основе дескриптора.
Текстовые операции преобразуют UCS-2 в UTF-8 и обратно; сырые операции
.BR mpu_fread (3)
и
.BR mpu_fwrite (3)
работают с байтами.
.SH ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успехе возвращается указатель на поток. При ошибке возвращается NULL и
устанавливается
.BR errno .
.SH ПРИМЕЧАНИЯ
Реализация использует системное соглашение о каталоге временных файлов,
создаёт эксклюзивный временный файл, а затем удаляет его имя. Дескриптор
принадлежит возвращённому потоку и закрывается функцией
.BR mpu_fclose (3).
.SH ПРИМЕР
.nf
mpu_FILE *fp = mpu_tmpfile();
__mpu_char16_t line[32];
if( fp != NULL )
{
mpu_fputs( MPU_UCS2("temporary"), fp );
mpu_rewind( fp );
mpu_fgets( line, 32, fp );
mpu_fclose( fp );
}
.fi
.SH СМ. ТАКЖЕ
.BR libmpuio (3),
.BR mpu_fopen (3),
.BR mpu_fclose (3),
.BR mpu_fseek (3)
|