- ベストアンサー
ファイル内の文字列を配列へ
テキストファイルの中の文字列を1字づつ配列に入れたいのですが、どのように書けばよいでしょうか? while((c=fgetc(fp)) ! = EOF){ c=rv[i]; i++; } 一応このようにやってみたのですが、ダメなようです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
★1文字ずつ配列に入れる必要ないと思いますけど。 ・次の質問の続きですよね。 http://oshiete1.goo.ne.jp/qa3233269.html→『構造体、ファイル処理のプログラム』 ↑ この質問は英字文字を検査して用意された A-Z のカウンタをインクリメントすれば 良いだけですので配列に入れる必要はないです。 >一応このようにやってみたのですが、ダメなようです。 ↑ ダメとはどう駄目なの? 多分はセグメントエラーになるのでしょうかね。 配列の容量が不足しているからじゃないの? ・だから配列にいれずに >// 読み込み >while ( (c = fgetc(fp)) != EOF ){ > if ( isupper(c) ){ > stat[ c - 'A' ].count++; > } > else if ( islower(c) ){ > stat[ c - 'a' ].count++; > } >} ↑ このように文字を検査してカウントしていけばよいだけだ。 ・以上。
その他の回答 (1)
- asuncion
- ベストアンサー率33% (2127/6289)
回答No.2
配列「に」入れたいのでしたら、 > c=rv[i]; これは左右両辺が逆です。
質問者
お礼
こんな簡単なミスをしてしまうとは・・・ ありがとうございます。
お礼
なるほど、まだ初心者でisupperなどの存在は知らなかったです。 詳しい説明ありがとうございました。