stdin
と を介してユーザーからいくつかのデータポイントを読み込もうとしていますscanf()
。
ただし、ユーザーが a で示される無効なデータを示したい場合*
、これは予想される形式 ( 、 など) に違反し、%f
私%d
が理解しているようにscanf()
、エラーが返されます。
これに対処するために私が考えた方法は、入力をstdin
一連の文字列として読み取り、これらをチェックして*
、それに応じて処理することです。これは非常に素朴で面倒に思えます。これを達成するためのよりクリーンな方法があるかどうか疑問に思っていました。
私は非常に限られた環境で作業しているため、POSIX/サードパーティのソリューションは適用されないことに注意してください。ANSI C のみ :(