c言語fflush()関数:ファイルバッファを空にする

714 ワード

fflush()は標準ライブラリファイルではなく、筆者のテストにより、VC 6.0完全なサポート、GCC(GCC 4.6.2)は、非整数タイプのアルファベットを入力すると「入力バッファ」に残ることをサポートしていません.
gccで実現:
#include 

int main() {
    int a;
    char b;

    scanf("%d", &a);
    while ( (b = getchar()) != '
' && b != EOF ) ;// b = getchar(); printf("a = %d, b = %c
", a, b); return 0; }

vc6.0で実装:
    #include 
    int main(){
        int a;
        char c;
       
        scanf("%d", &a);
        fflush(stdin);//       
        c = getchar();
        printf("a = %d, c = %c 
", a, c); return 0; }