fputc, fputs, putc, putchar, puts -
文字と文字列の出力
#include <stdio.h>
int fputc(int c, FILE *stream);
int fputs(const char *s, FILE *stream);
int putc(int c, FILE *stream);
int putchar(int c);
int puts(const char *s);
fputc() は、キャラクター
c を
unsigned char
にキャストし、
stream
に書き込む。
fputs() は、文字列
s を
stream に書き込む。
文字列終端のヌルバイト
('\0') は出力しない。
putc() は、
stream
を一度以上評価するマクロとして実装されているかも知れないという点を除き、
fputc() と同じである。
putchar(c) は、
putc(c,stdout )
と同じである。
puts() は、文字列
s
と改行を
stdout
に書き込む。
ここで説明された関数はお互いに混在して使用することができ、また、
stdio
ライブラリに含まれる他の出力関数を同じ出力ストリームに対して
呼び出す事が出来る。
これらの処理を停止せずに行いたいときは、
unlocked_stdio(3)
を参照のこと。
fputc(),
putc(),
putchar() は
unsigned char
として書き込まれた文字を
int
にキャストして返す。
エラーが発生した場合は
EOF を返す。
puts() と
fputs()
は、成功すると負ではない数を、エラーが発生した場合は
EOF を返す。
この節で使用されている用語の説明については、
attributes(7) を参照。
インターフェース |
属性 |
値 |
fputc(), fputs(), putc(), putchar(),
puts() |
Thread safety |
MT-Safe |
POSIX.1-2001, POSIX.1-2008, C89, C99.
stdio
ライブラリに含まれる出力関数と、同じ出力ストリームに結びつけられた
ファイルディスクリプターに対する
write(2)
の低レベル呼び出しを混在して
使用することは賢明ではない。
その結果は定義されておらず、望む結果が得られない可能性が高い。
write(2),
ferror(3),
fgets(3),
fopen(3),
fputwc(3),
fputws(3),
fseek(3),
fwrite(3),
putwchar(3),
scanf(3),
unlocked_stdio(3)
この man ページは Linux
man-pages
プロジェクトのリリース
5.10
の一部である。プロジェクトの説明とバグ報告に関する情報は
https://www.kernel.org/doc/man-pages/
に書かれている。