【掲示板ご利用上の注意】
※題名は具体的に! ※学校の課題の丸投げ禁止! ※ソースの添付は「HTML変換ツール」で字下げ! ※返信の引用は最小限に! ※環境(OSとコンパイラ)や症状は具体的に詳しく! ※返信付き投稿の削除は禁止! ※マルチポスト(多重投稿)は慎んで! 詳しくはこちら
本当はこんなに大きく書きたくはないのですが、なかなか守っていただけなくて…。 守ってくださいね。お願いします。(by管理人)
C言語ソース⇒HTML形式ツール掲示板2はこちら
行数用の変数を用意して fgets したら インクリメントするようにする。 それで、1行目だったら何もせずに次の行を読み込む。 int linenum = 0; while ( fgets( buff, sizeof( buff ), fp ) ) { linenum++; if ( linenum > 1 ) { /* ここにやりたい処理を記述 */ } }
> 間違えて削除してしまいました。 間違えて削除したならば、どのような質問をしたのかわかるようにしたほうがいいですよ。 (しかも、題名から推測できないし、、、) # 私も引用すべきでしたね。 質問内容は、 テキストをfgetsで読み込む時に先頭の1行だけ読み飛ばしたいというものでした。 私の解答は"読み飛ばす"というものではないのですが、結局最初の行を判定するために 読み込みは必要なので、先頭の1行は"処理対象からはずす"というようにしました。
私の場合、if文を使わないで単に下記のようにします。 # 同じことですが。 fgets( buff, sizeof( buff ), fp ); // 最初の行はスキップ while ( fgets( buff, sizeof( buff ), fp ) ) { /* ここにやりたい処理を記述 */ }