TOP - C言語 - stdio.h - fpurge()

入力または出力に際してバッファリングされたデータを消去します。

戻り値1 = fpurge(引数1)

戻り値1 : int
          実行が成功した場合 : 0
          その他の場合       : EOF
引数1   : FILE *
          ファイル・ポインタ

(例)
#include <stdio.h>

int main ()
{
    int c;

    c = fgetc(stdin);
    printf("1文字目 c = %d\n", c);

    c = fgetc(stdin);
    printf("2文字目 c = %d\n", c);

    printf("バッファリングされたデータを消去 : %d (成功 = 0)\n", fpurge(stdin));
    c = fgetc(stdin);
    printf("消去後入力1文字目 c = %d\n", c);

    printf("文字入力ループ開始「EOF入力」: %d\n", EOF);
    while ((c = fgetc(stdin)) != EOF)
    {
        printf("c = %d\n", c);
    }
    printf("正常終了 : c = %d\n", c);

    return 0;
}

実行結果(「123456[enter]」→「123[enter]」→「123[enter]」→「[control]+D」の順で入力)
123456
1文字目 c = 49
2文字目 c = 50
バッファを消去 : 0 (成功 = 0)
123
消去後入力1文字目 c = 49
文字入力ループ開始「EOF入力」: -1
c = 50
c = 51
c = 10
123
c = 49
c = 50
c = 51
c = 10
正常終了 : c = -1


Copyright(C) 2006-2012 CLAYPOT. All Rights Reserved.