私は次のプログラムを持っています
#include <stdio.h>
#include <stdlib.h>
int main()
{
char ans[8];
int i;
for(i=1;i<=3;i++)
{
printf("\n What is the unit of traffic ?");
scanf("%s",ans);
fflush(stdin);
if(stricmp(ans,"Earlang")==0)
{
printf("\nAnswer is correct");
exit(1);
}
else
if(i<3)
printf("\n Try Again!\n");
}
printf("\n Nunit of traffic is Earlang:");
}
fflush(stdin)
このプログラムでは は何に使用されますか?
ベストアンサー1
これは標準 C ではないため、動作は未定義です。
一部の実装では、バッファをクリアするためにこれを使用しますstdin
。
C11 7.21.5.2 よりfflush関数は、fflush
入力ストリームではなく、出力/更新ストリームでのみ機能します。
ストリームが、最新の操作が入力されていない出力ストリームまたは更新ストリームを指している場合、fflush 関数により、そのストリームの未書き込みデータがホスト環境に配信され、ファイルに書き込まれます。それ以外の場合、動作は未定義です。