夕輝と天空のグリニッジ4周目
2006年10月20日 日常+α【こ】
そんなに難しくないことをしてるはずなのに
プログラムがまともに動かなかったので、
いろいろ考えた結果、
ねっこのデータ構造を見直して
スマートな構造に書き換えたら
上手いこと動いた罠。
結局何が悪かったのかわからずじまい。
まあ、データ構造は悪かったとかいうオチ。
900行↑のプログラムを書き直してたっすよ。
まあ、時間的には、動作確認しながら進めたけど
そんなに時間は掛からなかったけどな。
自宅の新しい方にCpad導入して、
コンパイルまで可能にしておいた。
今まで基本研究室で書いて、
家でメモ帳で手直しってカタチだったけど
これなら、家で全てできる。
まあ、クラスター使う部分は
家では無理だけどさ。
あ、あとCに詳しい人(そんな人いるのか読者)に質問。
char *name;
scanf("%d %d %s",&a,&b,&str);
len=strlen(str)+1;
name=(char *)malloc(len);
if(name == NULL) {
printf("メモリが確保できませんn");
exit(1);
}
strcpy(name, str);
こんな形式で、モノの名前を動的確保して
書き込んでいってるんだけど、
途中からなぜ上書きされたり重なったりするんだが
たとえば、
ポッチャマ
ポッタイシ
エンペルト
って文字列読み込ませて、
表示させようとしたら、
本来エンペルトの部分が、ポッチャマとかになってる。
ちなみに、データ量は300ちょっとで
同時に数字も読み込ませてるけど、そっちは異常ない。
データ構造は、
構造体で内部に数値データとその名前を持たせてる。
そんなに難しくないことをしてるはずなのに
プログラムがまともに動かなかったので、
いろいろ考えた結果、
ねっこのデータ構造を見直して
スマートな構造に書き換えたら
上手いこと動いた罠。
結局何が悪かったのかわからずじまい。
まあ、データ構造は悪かったとかいうオチ。
900行↑のプログラムを書き直してたっすよ。
まあ、時間的には、動作確認しながら進めたけど
そんなに時間は掛からなかったけどな。
自宅の新しい方にCpad導入して、
コンパイルまで可能にしておいた。
今まで基本研究室で書いて、
家でメモ帳で手直しってカタチだったけど
これなら、家で全てできる。
まあ、クラスター使う部分は
家では無理だけどさ。
あ、あとCに詳しい人(そんな人いるのか読者)に質問。
char *name;
scanf("%d %d %s",&a,&b,&str);
len=strlen(str)+1;
name=(char *)malloc(len);
if(name == NULL) {
printf("メモリが確保できませんn");
exit(1);
}
strcpy(name, str);
こんな形式で、モノの名前を動的確保して
書き込んでいってるんだけど、
途中からなぜ上書きされたり重なったりするんだが
たとえば、
ポッチャマ
ポッタイシ
エンペルト
って文字列読み込ませて、
表示させようとしたら、
本来エンペルトの部分が、ポッチャマとかになってる。
ちなみに、データ量は300ちょっとで
同時に数字も読み込ませてるけど、そっちは異常ない。
データ構造は、
構造体で内部に数値データとその名前を持たせてる。
コメント