OSDN Git Service

d460600a5248e38b6f668f1b619eaa2fcd2fb32b
[linuxjm/LDP_man-pages.git] / draft / man3 / fflush.3
1 .\" Copyright (c) 1990, 1991 The Regents of the University of California.
2 .\" All rights reserved.
3 .\"
4 .\" This code is derived from software contributed to Berkeley by
5 .\" Chris Torek and the American National Standards Committee X3,
6 .\" on Information Processing Systems.
7 .\"
8 .\" Redistribution and use in source and binary forms, with or without
9 .\" modification, are permitted provided that the following conditions
10 .\" are met:
11 .\" 1. Redistributions of source code must retain the above copyright
12 .\"    notice, this list of conditions and the following disclaimer.
13 .\" 2. Redistributions in binary form must reproduce the above copyright
14 .\"    notice, this list of conditions and the following disclaimer in the
15 .\"    documentation and/or other materials provided with the distribution.
16 .\" 3. All advertising materials mentioning features or use of this software
17 .\"    must display the following acknowledgement:
18 .\"     This product includes software developed by the University of
19 .\"     California, Berkeley and its contributors.
20 .\" 4. Neither the name of the University nor the names of its contributors
21 .\"    may be used to endorse or promote products derived from this software
22 .\"    without specific prior written permission.
23 .\"
24 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
25 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
28 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
29 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 .\" SUCH DAMAGE.
35 .\"
36 .\"     @(#)fflush.3    5.4 (Berkeley) 6/29/91
37 .\"
38 .\" Converted for Linux, Mon Nov 29 15:22:01 1993, faith@cs.unc.edu
39 .\"
40 .\" Modified 2000-07-22 by Nicol疽 Lichtmaier <nick@debian.org>
41 .\" Modified 2001-10-16 by John Levon <moz@compsoc.man.ac.uk>
42 .\"
43 .\" Japanese Version Copyright (c) 1997-2000 YOSHINO Takashi and NAKANO Takeo
44 .\"       all rights reserved.
45 .\" Translated 1997-02-13,YOSHINO Takashi <yoshino@civil.jcn.nihon-u.ac.jp>
46 .\" Update & Modified 1999-03-01, NAKANO Takeo <nakano@apm.seikei.ac.jp>
47 .\" Update & Modified 2000-09-21, NAKANO Takeo
48 .\" Updated 2001-11-02, Kentaro Shirakata <argrath@ub32.org>
49 .\" Updated 2010-04-10, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>, LDP v3.24
50 .\"
51 .\"WORD:        global variable         大域変数
52 .\"WORD:        buffered                バッファリングされた
53 .\"
54 .TH FFLUSH 3  2009-09-06 "GNU" "Linux Programmer's Manual"
55 .\"O .SH NAME
56 .\"O fflush \- flush a stream
57 .SH 名前
58 fflush \- ストリームの内容を強制的に出力(フラッシュ)する
59 .\"O .SH SYNOPSIS
60 .SH 書式
61 .B #include <stdio.h>
62 .sp
63 .BI "int fflush(FILE *" stream );
64 .\"O .SH DESCRIPTION
65 .SH 説明
66 .\"O For output streams,
67 .\"O .BR fflush ()
68 .\"O forces a write of all user-space buffered data for the given output or update
69 .\"O .I stream
70 .\"O via the stream's underlying write function.
71 .\"O For input streams,
72 .\"O .BR fflush ()
73 .\"O discards any buffered data that has been fetched from the underlying file,
74 .\"O but has not been consumed by the application.
75 .\"O The open status of the stream
76 .\"O is unaffected.
77 出力ストリームに関しては、
78 .BR fflush ()
79 は、ユーザー空間でバッファリングされているすべてのデータを
80 指定された出力に書き出す (フラッシュする)、
81 もしくはストリーム
82 .I stream
83 の下位にある書き込み関数を用いてこのストリームを更新する。
84 入力ストリームに関しては、
85 .BR fflush ()
86 は、対応するファイルから取得されたが、アプリケーションからは
87 読み出されていないバッファデータを全て破棄する。
88 ストリームは開いた状態のままであり、
89 この関数によって何の影響も受けない。
90 .PP
91 .\"O If the
92 .\"O .I stream
93 .\"O argument is NULL,
94 .\"O .BR fflush ()
95 .\"O flushes
96 .\"O .I all
97 .\"O open output streams.
98 .I stream
99 引数が .BR NULL ならば、
100 .BR fflush ()
101 は開いている\fIすべての\fR出力ストリームをフラッシュする。
102 .PP
103 .\"O For nonlocking counterparts, see
104 .\"O .BR unlocked_stdio (3).
105 これらの処理をロックせずに行いたいときは、
106 .BR unlocked_stdio (3)
107 を参照のこと。
108 .\"O .SH "RETURN VALUES"
109 .SH 返り値
110 .\"O Upon successful completion 0 is returned.
111 .\"O Otherwise,
112 .\"O .B EOF
113 .\"O is returned and
114 .\"O .I errno
115 .\"O is set to indicate the error.
116 成功すると 0 が返される。
117 その他の場合には
118 .B EOF
119 が返され、
120 .I errno
121 が、エラーに対応した値に設定される。
122 .\"O .SH ERRORS
123 .SH エラー
124 .TP
125 .B EBADF
126 .\"O .I Stream
127 .\"O is not an open stream, or is not open for writing.
128 .I Stream
129 は開いているストリームではない。
130 あるいはストリームは書き込み用ではない。
131 .PP
132 .\"O The function
133 .\"O .BR fflush ()
134 .\"O may also fail and set
135 .\"O .I errno
136 .\"O for any of the errors specified for
137 .\"O .BR write (2).
138 .BR fflush ()
139 関数は
140 .BR write (2)
141 に関して規定されているエラーで失敗することもある。
142 この場合
143 .I errno
144 もその値に設定される。
145 .\"O .SH "CONFORMING TO"
146 .SH 準拠
147 C89, C99, POSIX.1-2001, POSIX.1-2008.
148
149 .\"O The standards do not specify the behavior for input streams.
150 .\"O Most other implementations behave the same as Linux.
151 標準では、入力ストリームに対する動作は規定されていない。
152 他のほとんどの実装は Linux と同じ動作をする。
153 .\" Verified on: Solaris 8.
154 .\"O .SH NOTES
155 .SH 注意
156 .\"O Note that
157 .\"O .BR fflush ()
158 .\"O only flushes the user space buffers provided by the C library.
159 .\"O To ensure that the data is physically stored on disk
160 .\"O the kernel buffers must be flushed too, for example, with
161 .\"O .BR sync (2)
162 .\"O or
163 .\"O .BR fsync (2).
164 .BR fflush ()
165 は、 C ライブラリが与えているユーザー空間のバッファしかフラッシュしない。
166 データが物理的にディスクに保存されることを保証したければ、
167 カーネルバッファもフラッシュしなければならない。
168 これには例えば
169 .BR sync (2)
170
171 .BR fsync (2)
172 を用いる。
173 .\"O .SH "SEE ALSO"
174 .SH 関連項目
175 .BR fsync (2),
176 .BR sync (2),
177 .BR write (2),
178 .BR fclose (3),
179 .BR fopen (3),
180 .BR setbuf (3),
181 .BR unlocked_stdio (3)