Fgets
実際に gets を fgets に置き換える場合は上記の事を考慮しなければならない、ここでは実際に gets を fgets に置き換える例を示す。具体的には gets を使用した以下のようなコードがあるとする、
この時このコードを fgets に置き換えて、その後の処理に影響を与えないようにする場合は以下のようになる、
入力ストリームは改行文字を読むまで getchar関数を繰り返して呼び出すことで実現している。ちなみに本格的にセキュリティを考慮する場合には上記のコードにさらにストリームクリア時にエラーが発生した場合などの処理も加える必要があるが本稿の趣旨と外れるのでここでは割愛する。