ユーザがコンソールに入力する文字列から整数を取得する必要があります。scanfで文字列を解析する
例: 私はこの文字列を持っています:[1, 2, 3, 4, 5]
と私はそれからすべての整数を取得したいと思います。私は既にscanf("%*[^\[]%d,", &a)
のような複数のscanf
パターンを試しましたが、何も動作しませんでした。スタックオーバーフローに関連するものは見つかりませんでした。
主な問題は、文字列に1〜50の整数を入力できることです。私はどのように整数だけをストックするかについては考えていません( '、'、 '' '' 'を取り除いて)配列に入れてください。
いくつかのソリューションは、このような
EDIT ... []または、 しかし、今、私はまだコマスと整数の間のスペースを削除する必要があるなどの特殊文字を除去するために発見されている:問題はfgetsのを使って解きます。私はscanfを使用して文字列を取得していましたが、SPACESには停止していました。 scanf関数であることを行うにはどのように
フォンドアウト:
しばらく(scanf関数( "%d個"、& i))を
あなたは、このリンクを見たことがありますか? http://stackoverflow.com/questions/9210528/split-string-with-delimiters-in-c – Marievi
私は質問が不明で、本質的にコードが表示されていない作業を受けるのを助けてくれるように頼んでいるので、議論を終えることにしました。 'scanf()'は文字列からの読み込みには使用されないので、 "パターン"は機能しません。 'sscanf()'は、その目的のために使われるかもしれません。 – Peter
アドバイス: 'scanf'や友達と解析しないでください。 'scanf'は、入力があらかじめ決められている場合にのみ使用できます。 –