GNU/Linux >> Linux の 問題 >  >> Linux

Linux で fflush() が機能しない

fflush を使用しないでください。代わりにこの関数を使用してください:

04

03 実装に依存しますが、この関数は常に機能します。 C では、12 を使用することは悪い習慣と見なされています。 .


24 の動作 は入力ストリームに対して定義されていません (オンライン 2011 標準):

7.21.5.2 36 関数

あらすじ

1<プレ>14 説明

2 ストリームが、最新の操作が入力されていない出力ストリームまたは更新ストリームを指している場合、43 関数により、そのストリームの未書き込みデータがホスト環境に配信され、ファイルに書き込まれます。それ以外の場合、動作は未定義です。

3 53 の場合 61 の null ポインターです。 関数は、動作が上記で定義されているすべてのストリームに対して、このフラッシュ アクションを実行します。

返品

4 78 関数はストリームのエラー インジケータを設定し、書き込みエラーが発生した場合は EOF を返し、それ以外の場合はゼロを返します。

LINUX で作業しているときに同じ問題に直面しました。この問題の別の解決策は、83 などのダミー文字を定義することです。 97 を入れます 実際の入力が行われる直前にスキャンします。これは私にとってはうまくいきました。あなたにも役立つことを願っています。


Linux で常に動作するもの:

21

tcdrain を使用できます とtcflush in/out/err fd だけではありません。


Linux
  1. Linux の itoa 関数はどこにありますか?

  2. PYTHONPATH が GNU/Linux の sudo で機能しない (root で機能)

  3. Linux の limit.conf が機能しない?

  1. Nightmare.js が Ubuntu Linux クラウド サーバーで期待どおりに動作しない

  2. Linux コマンド 'll' が機能しない

  3. Caps Lock LED が Linux コンソールで機能しない

  1. LinuxMint17でSkypeマイクが機能しない[クイックヒント]

  2. Linux – Uefi / biosで動作するのにUsbがLinuxで動作しないのはなぜですか?

  3. Linux シンボリック リンクが期待どおりに機能しない