掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.26862

ファイルからの読み込み
投稿者---ミズミズ(2006/05/15 00:42:55)


いまファイルからデータを変数に入力する方法を考えています。
読み込むファイルのデータは以下の用になっています
1000001 gakub110
1000002 gakub120
1000003 gakub130
1000004 gakub140
1000005 gakub150

このデータファイルを読み込み、変数aに1000001,変数bに110(gakubは除く)
に代入するようにしたいのですがうまくいきません。
どこがいけないのでしょうか?

int main()
{
  FILE *fp;
  int i = 0;
  int *a, *b;
  char str[18];
  if(!(fp = fopen("hoge.txt", "r")))
    return -1;
  a = (int *)malloc(sizeof(int));
  b = (int *)malloc(sizeof(int));
  /* input  */
  while((fgets(str, 18, fp) != NULL)){
    sscanf(str, "%d gakub%d \n", &a[i], &b[i]);
    printf("%d %d\n", a[i], b[i]);
    i++;
  }
  return 0;
}



この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:ファイルからの読み込み 26864 michi 2006/05/15 01:13:44


No.26864

Re:ファイルからの読み込み
投稿者---michi(2006/05/15 01:13:44)


まず、a,bそれぞれにint型一要素分しかメモリを確保していないのに
ループで添え字アクセス(a[i]とb[i]のこと)してるのは危険ですね。


この投稿にコメントする

削除パスワード

No.26865

文字列比較
投稿者---ミズミズ(2006/05/15 01:31:19)


なるほど。
あとfreeもしてませんね。他にありますか?


この投稿にコメントする

削除パスワード

No.26867

Re:文字列比較
投稿者---REE(2006/05/15 09:27:33)


>なるほど。
>あとfreeもしてませんね。他にありますか?

環境(OSとコンパイラ)や症状が具体的に詳しく書いてないところです。


この投稿にコメントする

削除パスワード

No.26873

Re:文字列比較
投稿者---michi(2006/05/16 02:30:11)


>なるほど。
>あとfreeもしてませんね。他にありますか?

何故、修正して再度実行してどうなったかを書かないんですか?


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧