【初心者歓迎】C/C++室 Ver.49【環境依存OK】at TECH【初心者歓迎】C/C++室 Ver.49【環境依存OK】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト486:デフォルトの名無しさん 08/02/24 00:24:02 >>484 h内のローカル変数chのアドレスをx->startに格納しているが、 chはhを抜けると無くなるので、x->startは存在しない場所を指している。 487:デフォルトの名無しさん 08/02/24 00:24:26 >>484 じゃあこれでいいだろう #include <stdio.h> #include <string.h> typedef struct { char **start ; char **end; } bin; void f(bin *x) { delete[] *x->start; *x->start = new char [3]; strcpy(*x->start,"aa"); } char *ch; void h(bin *x){ ch=new char [3]; ch[0]='X';ch[1]=0; x->start=&ch; } main() { bin x; h(&x); f(&x); char *test=new char [1]; printf("%s",*(x.start)); } 488:デフォルトの名無しさん 08/02/24 00:25:03 char *test=new char [1];をのぞくと、bcc5.5では動作します ほかのコンパイラでは、入れなくても実行時に落ちます 原因は何ですか? 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch