home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
gnu
/
ixemul-39.47-env-bin.lha
/
man
/
cat3
/
fopen.0
< prev
next >
Wrap
Text File
|
1993-12-07
|
5KB
|
133 lines
FOPEN(3) UNIX Programmer's Manual FOPEN(3)
NNAAMMEE
ffooppeenn, ffddooppeenn, ffrreeooppeenn - stream open functions
SSYYNNOOPPSSIISS
##iinncclluuddee <<ssttddiioo..hh>>
_F_I_L_E _*
ffooppeenn(_c_h_a_r _*_p_a_t_h, _c_h_a_r _*_m_o_d_e)
_F_I_L_E _*
ffddooppeenn(_i_n_t _f_i_l_d_e_s, _c_h_a_r _*_m_o_d_e)
_F_I_L_E _*
ffrreeooppeenn(_c_h_a_r _*_p_a_t_h, _c_h_a_r _*_m_o_d_e, _F_I_L_E _*_s_t_r_e_a_m)
DDEESSCCRRIIPPTTIIOONN
The ffooppeenn() function opens the file whose name is the string pointed to
by _p_a_t_h and associates a stream with it.
The argument _m_o_d_e points to a string beginning with one of the following
sequences (Additional characters may follow these sequences.):
``r'' Open text file for reading. The stream is positioned at the be
ginning of the file.
``r+'' Open for reading and writing. The stream is positioned at the
beginning of the file.
``w'' Truncate file to zero length or create text file for writing.
The stream is positioned at the beginning of the file. It ``w+''
Open for reading and writing. The file is created if it does not
exist, otherwise it is truncated. The stream is positioned at
the beginning of the file.
``a'' Open for writing. The file is created if it does not exist. The
stream is positioned at the end of the file.
``a+'' Open for reading and writing. The file is created if it does not
exist. The stream is positioned at the end of the file.
The _m_o_d_e string can also include the letter ``b'' either as a third char
acter or as a character between the characters in any of the two
character strings described above. This is strictly for compatibility
with ANSI C3.1591989 (``ANSI C'') and has no effect; the ``b'' is ig
nored.
Any created files will have mode "S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP |
S_IROTH | S_IWOTH" (0666), as modified by the process' umask value (see
umask(2)).
Reads and writes may be intermixed on read/write streams in any order,
and do not require an intermediate seek as in previous versions of _s_t_d_i_o.
This is not portable to other systems, however; ANSI C requires that a
file positioning function intervene between output and input, unless an
input operation encounters endoffile.
The ffddooppeenn() function associates a stream with the existing file descrip
tor, _f_i_l_d_e_s. The _m_o_d_e of the stream must be compatible with the mode of
the file descriptor.
The ffrreeooppeenn() function opens the file whose name is the string pointed to
by _p_a_t_h and associates the stream pointed to by _s_t_r_e_a_m with it. The
original stream (if it exists) is closed. The _m_o_d_e argument is used just
as in the fopen function. The primary use of the ffrreeooppeenn() function is
to change the file associated with a standard text stream (_s_t_d_e_r_r, _s_t_d_i_n,
or _s_t_d_o_u_t).
RREETTUURRNN VVAALLUUEESS
Upon successful completion ffooppeenn(), ffddooppeenn() and ffrreeooppeenn() return a FILE
pointer. Otherwise, NULL is returned and the global variable _e_r_r_n_o is
set to indicate the error.
EERRRROORRSS
[EINVAL] The _m_o_d_e provided to ffooppeenn(), ffddooppeenn(), or ffrreeooppeenn() was in
valid.
The ffooppeenn(), ffddooppeenn() and ffrreeooppeenn() functions may also fail and set _e_r_r_n_o
for any of the errors specified for the routine malloc(3).
The ffooppeenn() function may also fail and set _e_r_r_n_o for any of the errors
specified for the routine open(2).
The ffddooppeenn() function may also fail and set _e_r_r_n_o for any of the errors
specified for the routine fcntl(2).
The ffrreeooppeenn() function may also fail and set _e_r_r_n_o for any of the errors
specified for the routines open(2), fclose(3) and fflush(3).
SSEEEE AALLSSOO
open(2), fclose(3), fseek(3), funopen(3)
SSTTAANNDDAARRDDSS
The ffooppeenn() and ffrreeooppeenn() functions conform to ANSI C3.1591989 (``ANSI
C''). The ffddooppeenn() function conforms to IEEE Std1003.11988 (``POSIX'').
BSD Experimental June 29, 1991 2