1時間ごとに更新!Amazon.co.jpで今売れている本トップ100   掲示板ランキング



掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板1

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧

No.5599

fgets関数について
投稿者---いぬっ!(2006/04/01 19:12:27)


fgets関数で標準入力のバッファフラッシュするときにfflush関数を使わずにする方法があったら教えてください。


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:fgets関数について 5600 YuO 2006/04/01 21:38:59


No.5600

Re:fgets関数について
投稿者---YuO(2006/04/01 21:38:59)


>fgets関数で標準入力のバッファフラッシュするときにfflush関数を使わずにする方法があったら教えてください。

標準入力のバッファをフラッシュ(?)する方法は存在しません。
fflush(stdin);は未定義動作となりますので,使ってはいけません。
see) C FAQ 12.26



この投稿にコメントする

削除パスワード

No.5601

Re:fgets関数について
投稿者---RAPT(2006/04/01 23:38:47)


# なのに、VC++6, VC++.NET2003 付属のMSDNには、gets() を使う前に
# 入力ストリームを fflush() でフラッシュしろ、と書いてある・・・
# なお、VC++.NET2003 のMSDN に方には、以下の注釈が追加されていました。
# MSDN> // fflush on input stream is an extension to the C standard



この投稿にコメントする

削除パスワード

No.5605

Re:fgets関数について
投稿者---たかぎ(2006/04/04 11:23:39)
http://takagi.in/


><pre># なのに、VC++6, VC++.NET2003 付属のMSDNには、gets() を使う前に
# 入力ストリームを fflush() でフラッシュしろ、と書いてある・・・
# なお、VC++.NET2003 のMSDN に方には、以下の注釈が追加されていました。
# MSDN> // fflush on input stream is an extension to the C standard
</pre>

未定義の動作は、翻訳時またはプログラム実行時に、文書化された、環境に
特有な方法で処理してもよいことになっていますので、VC++なりMSDNの記述
なりが悪いわけではないのですが...
# 「未定義」というのは規格が定義していないのであって、処理系が定義して
# いないわけでは必ずしもないので

ただ、一般的には、入力バッファのフラッシュは fseek(stdin, 0L, SEEK_CUR)
とするしかないのでしょうね。


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧





掲示板提供:(有)リアル・インテグリティ