【初心者歓迎】C/C++室 Ver.49【環境依存OK】at TECH【初心者歓迎】C/C++室 Ver.49【環境依存OK】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト214:デフォルトの名無しさん 08/02/22 19:26:39 deleteした瞬間に落ちます tryも無理です f(char*& ch){ try{ delete ch; } catch(...){cerr << "例外を受け取りました。" << endl;} ch=new char[10]; strcpy(ch,"ssssssss"); } main(){ char *a=new char[1]; f(a); cout<<a<<endl; char *b=NULL; f(b); cout<<b<<endl; char *c; f(c); cout<<c<<endl; } 215:デフォルトの名無しさん 08/02/22 19:31:57 >>214 いい方法を教えてあげよう 関数 f の前にこれを書くんだ /* この関数に初期化してないポインタを渡してはいけません */ 216:デフォルトの名無しさん 08/02/22 19:43:25 基礎からやり直せよ 217:デフォルトの名無しさん 08/02/22 19:45:15 >>214 だーかーらーnewで確保したメモリを指してるポインタと、未初期化のポインタを見分け る方法なんて存在しないんだってば。 ポインタ使うときは初期化しろって何で言われてるのか考えたことあるか? 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch