fwscanf

ストリーム (stream) から書式ワイド文字列に従ってデータを読み込みます.

#include <stdio.h>
#include <wchar.h>
int fwscanf(
    FILE * restrict stream,
    const wchar_t * restrict format,
    ...
);

fwscanf 関数は format が指す書式ワイド文字列に従って stream が指すストリームからデータを読込み,format に続く引数の指すオブジェクトに代入します.

引数

戻り値

  • 成功した場合: 代入された入力項目の個数
  • 失敗した場合: EOF

C言語サンプルプログラム

fwscanf 関数を使用してストリームからデータを読み込むサンプルプログラムを以下に示します.

/* header files */
#include <stdio.h>
#include <stdlib.h>
#include <wchar.h>

/* macros */
#define DATA_MAX 1024

/* main */
int main(void) {
    FILE *fp;
    char file_name[] = "sample.txt";
    wchar_t writeLine[DATA_MAX] = {L'\0'};

    /* ファイルオープン */
    if ((fp = fopen(file_name, "r")) == NULL) {
        fprintf(stderr, "%s\n", "error.");
        return EXIT_FAILURE;
    }

    /* サンプルファイルを読み込む */
    fwscanf(fp, L"%s", writeLine);

    /* ファイルクローズ */
    fclose(fp);

    wprintf(L"%s\n", writeLine);

    return EXIT_SUCCESS;
}

sample.txtの内容

sample.txt を以下のように用意したとします.

Snoopy!

実行例

サンプルプログラムの実行結果は以下のようになります.

Snoopy!

Cプログラマの必読書

たくさんあるC言語関連の書籍の中でも特に役に立った本です.よかったら参考にしてみてください.

C実践プログラミング 第3版

C言語の実践的参考書.少々値段は張りますが初心者を脱しようとしている人は絶対に読むべきです.
文法だけでなく,コーディングスタイルやデバッグなど文字通り「実践的」なことが書かれているので非常にためになります. オライリーの本は,読みにくい本が多いのですが本書はとても読みやすくオススメです.


C言語ポインタ完全制覇 (標準プログラマーズライブラリ)

ポインタの解説書としては最高の書籍です.
この1冊でポインタを完全に理解することができます.全くの初学者が読むには敷居が高いですが,入門書を読み終えた後に読むと非常に有益です.