Cがファイルを読み込む方法についてちょっと混乱します。 fscanfを使って(複数の行を持つ)ファイルを読み込み、配列[0]に格納するとします。 if文を使用して\n
文字を確認し、2番目の行を配列[1]に読み込み続けることはできますか?またはファイルの先頭から読み込むために繰り返しますか?行解析のために配列を設定するには
0
A
答えて
1
これらの機能は、現在の位置から常に読み取られます(たとえば、ftell()
を使用して取得できます)。読み込み後、現在位置は常に更新/移動されます(ただし、反対の機能をいくつか除いて)。位置を自分で変更するには、fseek()
を使用します。補足:fscanf()
を使用しないでください。入力の形式が期待どおりでない場合には、結果が予測できない可能性があります。
0
まず、scanf()
に行全体を読み取るのはやや難しい作業です。あなたは仕事のためにfgets()
を使うことをお勧めします。また、各行の読み込みに十分なメモリがあることを確認する必要があります。
scanf("%s",...)
は、最初の空白(大まかに言えば、行ではなく、行が単なる単語で構成されていない限り)までの文字を読み取ることを意味することに注意してください。
私が書くかもしれません:
enum { MAX_LINES = 10, MAX_LINESIZE = 256 };
char array[MAX_LINES][MAX_LINESIZE];
int i = 0;
while (i < MAX_LINES && fgets(array[i], sizeof(array[i]), stdin) != 0)
i++;
関連する問題
- 1. json配列を解析するには?
- 2. 配列を解析して次のループのためにVisual Basic
- 3. 複数の設定ファイルを解析するためのベストプラクティス
- 4. C:設定ファイルとコマンドラインを解析するためのライブラリ
- 5. 設定ファイルを解析するためのPythonスクリプト
- 6. 設定ファイルからバインディング設定を解析するには?
- 7. URLを配列に解析する
- 8. 配列にデータを解析する
- 9. 配列を1行に設定する
- 10. 次の行の関連するデータで配列を解析するには
- 11. 解析:JSONテキストが配列またはオブジェクトで始まっていないため、フラグメントが設定されないようにするためのオプション
- 12. AWS ELBログを解析するためのLogstashの設定方法は?
- 13. 特定のモデルにオブジェクトを解析するためのデザインパターン
- 14. データセットごとに異なる配列を解析するには?
- 15. JSON文字列から配列を解析するには?
- 16. Sparkで文字列を配列に解析する方法は?
- 17. どのように特定の値、IDのためのFBグラフAPIフレンドリストの配列を解析する?
- 18. gsonを使用してオブジェクトの特定の配列を解析するには?
- 19. 解析JSONは - 配列
- 20. JSONに解析される配列エントリ
- 21. 配列の文字列を解析して配列にするにはどうしたらいいですか?
- 22. アンマネージコードコール、配列解析
- 23. 解析JSON配列
- 24. TFSファイルシステムからのリモートコードを解析するためにsonarqubeを設定するには?
- 25. _dataを配列に解析するには?
- 26. PHPの解析配列内にJS変数を持つJSファイル内のPHP配列を解析する-YII2
- 27. Swiftで特定のデータを配列に解析する方法は?
- 28. rapidjasonでルートの配列を解析するには
- 29. オブジェクトマッパー - [AnyObject]の配列を解析する
- 30. PostgreSQLのjson配列を解析する
を使用すると、これらのような関数とはどういう意味ですか?代わりにfgetsを使うべきですか? –
本当にあなたがしたいことにかかっています。一般的に、 'fgets()'や 'fread()'(そして 'fscanf()'以外の関数)はより安全であると考えられます。しかし、ファイルを 'fgets()'という行で読み込むのは、(ストリームを使いたくない限り)完璧な選択でなければなりません。 – Mario
私はfgets()であることを私がもっとよく知っているものを使うつもりです。ありがとう –