deleteでメモリ開放するとエラーになる原因がわからないです。
下記のようなプログラムを作ったのですが、deleteのところでエラーがでます。
エラー内容は
「Windows によって ****.exe でブレークポイントが発生しました。
ヒープが壊れていることが原因として考えられます。****.exe または読み込まれた DLL にバグがあります。
あるいは、****.exe がフォーカスを持っているときに、ユーザーが F12 キーを押したことが原因として考えられます。
可能であれば、出力ウィンドウに詳細な診断情報が表示されます。」
とでます。
ソースは
wchar_t *aaa = L"ほげほげ";
wchar_t bbb[200];
wcscpy(bbb, aaa);
delete aaa;
wprintf(L"%s\n", bbb);
getchar();
です。
どこに原因があるのでしょうか?
[環境]
WindowsXP+VisualC++2008 UNICODE使用
No.5ベストアンサー
- 回答日時:
メモリを動的に取ったした時は、決まったやり方で解放します。
メモリを確保するにはC++では「new」、C言語では「new」が一般的です。
「new」で取ったメモリは「delete」で解放する、「malloc」は「free」を使う、というのも決まりです。(「new」で取ったメモリを「free」で解放するとエラーになります。「malloc」も同じ)
サンプルのコードでは、「new」で取っていないメモリ領域に対して「delete」をかけてしまっているのがエラーの原因です。
コンパイルを通すだけなら「delete」の部分を削除すればよいかと思います。
「new」と「delete」はC++をやる限り理解しなければならない命令文です。ここの理解がいい加減だと、C++では地獄を見ます。
できれば「C++ new delete」で検索をかけて、詳細を調べることをお勧めします。
No.4
- 回答日時:
>文字列定数をdeleteで解放
文字定数に限らず、newしていない領域に対して
deleteしてはいけません。
この2つはセットだと思ってください。
>どこに原因があるのでしょうか?
delete aaa;←ここ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- プリンタ・スキャナー 冬にエラーが出て使えなくなり、夏まで放置していたら勝手自然に直るプリンターは、プリンターのどこの何が 2 2023/02/11 09:20
- JavaScript jsonテキストデータの並び替えができるサービスを教えてください 2 2022/08/05 20:16
- HTML・CSS htmlについて質問です コードを打ったあと画像が表示されないので調べる svg ファイルが写真のよ 1 2023/07/11 10:53
- SQL Server ACCESSで3ファイルを結合して、表を作成するやり方を教えて下さい。 17 2022/08/15 20:34
- Excel(エクセル) Excel起動時にエラーダイアログが表示される 3 2022/07/28 19:52
- SQL Server ACCESSで複数テーブルを結合して、リストを作る方法を教えてください。 2 2022/08/12 19:32
- その他(プログラミング・Web制作) bashのgrepで複数の検索、かつスクリプト内で改行する方法を教えてください。 1 2022/10/06 20:09
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- Visual Basic(VBA) VBAのエラーについて 2 2023/08/02 17:46
- Windows 10 IT初心者です! powershellで以下のようなエラーが出ました オブジェクト参照がオブジェクト 1 2023/05/17 11:30
このQ&Aを見た人はこんなQ&Aも見ています
-
これまでで一番「情けなかったとき」はいつですか?
これまでの人生で一番「情けない」と感じていたときはいつですか? そこからどう変化していきましたか?
-
これ何て呼びますか
あなたのお住いの地域で、これ、何て呼びますか?
-
初めて自分の家と他人の家が違う、と意識した時
子供の頃、友達の家に行くと「なんか自分の家と匂いが違うな?」って思いませんでしたか?
-
2024年のうちにやっておきたいこと、ここで宣言しませんか?
2024年も残すところ50日を切りましたね。 ことしはどんな1年でしたか? 2024年のうちにやっておきたいこと、 よかったらここで宣言していってください!
-
【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
【お題】 ・このサンタクロースは偽物だと気付いた理由とは?
-
読み込み中にアクセス違反が発生しました、と出ます。これを回避することは
C言語・C++・C#
-
画面を強制的に再描画させる方法
C言語・C++・C#
-
CStringのFindで文字列検索を行いたいのですが
C言語・C++・C#
-
-
4
Debug Assertion Failed?
C言語・C++・C#
-
5
C++初心者です。 debug assertion errorについて
C言語・C++・C#
-
6
メモリリークの件
C言語・C++・C#
-
7
DWORDの実際の型は何でしょうか
C言語・C++・C#
-
8
MFC ダイアログ上のID取得について
C言語・C++・C#
-
9
newしないオブジェクトについて
C言語・C++・C#
-
10
構文エラー;"が型の前にありませんとは、どうしたら解決できるのですか。"
C言語・C++・C#
-
11
デバッグ中のエラーのことで教えてください。
C言語・C++・C#
-
12
CStringからchar*への型変換について教えてください。
C言語・C++・C#
-
13
charからLPTSTRへの変換方法
C言語・C++・C#
-
14
ボタンの表示の色、フォントを変更したい
C言語・C++・C#
-
15
コンボボックスでデフォルト値の設定
C言語・C++・C#
-
16
CStringの文字列検索&抜き出しについて
C言語・C++・C#
-
17
ヒープメモリの解放について
C言語・C++・C#
-
18
std::stringからLPCWSTR型への変換
C言語・C++・C#
-
19
静的でないメンバ関数の呼び出しが正しくありません
C言語・C++・C#
-
20
CString から LPCTSTRの型に変換
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エラー:ページにアクセスする...
-
deleteで開放するとエラーにな...
-
VBA で警告音
-
配列のオフセットおよび長さが...
-
VB6.0 パスが見つかりません
-
外付けハードディスク2台をミ...
-
Windows10 バックアップで失敗...
-
学校のChrome Bookのロックの解...
-
ASRockのLED制御が出来ない
-
DVDshrink メモリリソースが足...
-
Thunderbird ローカルフォルダ...
-
特定のsteamゲームが起動前にク...
-
DROP BOX バックアップを削除し...
-
ARCServeのテープローテーショ...
-
DAT72に書き込み時にエラー発生
-
添付した画像の、transcendの外...
-
粗オッズ比と調整済みオッズ比
-
DATテープの破棄のしかたはどう...
-
テープアレイとテープライブラリ
-
スクラッチメディア・メディア...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
deleteで開放するとエラーにな...
-
配列のオフセットおよび長さが...
-
エラー:ページにアクセスする...
-
VB6.0 パスが見つかりません
-
Excel vbaでフォルダー内のppt...
-
VBA で警告音
-
スクリプトで通知領域にあるソ...
-
Access VBA での有効なパスチェ...
-
c#で他のアプリをアクティブに...
-
TRACKER : error TRK0002:
-
Dreamweaverでテンプレートが作...
-
FFFTP
-
<strong>は、重要・緊急・注意...
-
py2app
-
pythonのモジュールのエラーの原因
-
IEの操作(Busy)でエラーになる
-
VC++6.0 警告抑制
-
ASRockのLED制御が出来ない
-
外付けハードディスク2台をミ...
-
学校のChrome Bookのロックの解...
おすすめ情報