putc | Programming Place Plus C言語編 標準ライブラリのリファレンス

トップページC言語編標準ライブラリのリファレンス(名前順)

トップページC言語編標準ライブラリのリファレンス(ヘッダ別)


putc関数 🔗

概要

出力ストリームへ1文字出力する。

ヘッダ

stdio.h

形式

int putc(int c, FILE* stream);

引数

c

出力する文字。

stream

出力ストリーム。

戻り値

成功すれば、c がそのまま返される。失敗時は EOF が返される。

詳細

マクロとして実装されている可能性があるという点を除くと、fputc関数と同じである。
書き込みエラーが発生した場合は、ストリームのエラー指示子がセットされる。

注意

マクロとして実装されている可能性があるので、putc(c++, fp); のような、マクロの使用上問題になり得るような使い方をしてはならない。

使用例

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

int main(void)
{
    FILE* fp = fopen("test.txt", "w");
    if (fp == NULL) {
        fputs("ファイルオープンに失敗しました。\n", stderr);
        exit(EXIT_FAILURE);
    }

    putc('a', fp);
    if (ferror(fp)) {
        fputs("書き込み中にエラーが発生しました。\n", stderr);
        exit(EXIT_FAILURE);
    }

    if (fclose(fp) == EOF) {
        fputs("ファイルクローズに失敗しました。\n", stderr);
        exit(EXIT_FAILURE);
    }
}

実行結果(標準出力):

実行結果(test.txt):

関連

fputc関数は同じ効果を持つが、必ず関数として実装されている。
標準出力に特化した、putchar関数がある。
puts関数は、その名称からして putc関数の文字列版のようだが、標準出力に特化しているなど、まったく異なるものである。putc関数の文字列版は fputs関数の方であると考えられる。
ワイド文字版の putwc関数がある。

解説章


参考リンク 🔗

本ページはアフィリエイトプログラムによる収益を得ています。
以下のリンクから商品を購入されると、Programming Place 管理者に紹介料が支払われています。


更新履歴 🔗

 解説中で C95 を(C89 に対して)特別扱いしないように修正。そもそもC言語編は C95ベースなので、余計な説明は省く。

 書き込みエラーに関する記述を追加。
「使用例」に、エラーチェックを追加。

 新規作成。



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る