掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ゼロで初期化された文字列のサイズを知るには? (ID:67078)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
夏みかんさんのリンクにあるページを参考に、いろいろな種類のメモリ確保の時間を計ってみました。ヘルプにはGlobal〜関数は遅いので、Heap〜関数を使いなさい、とありますが、そんなに変わらないみたい(1024Byte * 10000回の確保)です。 ただ一つ疑問に思ったことが・・・ Byte *lpBuf; lpBuf = GlobalAlloc(GPTR, 1); で確保して lpBuf = GlobalReAlloc(lpBuf, 1000, 0); を何度か繰り返して再確保する でもこれが何回目かの再確保で失敗した場合lpBuf はNULLが返りますよね。 この場合、それまでに確保したメモリ領域って解放できませんよね? Heap〜関数の場合は、失敗した場合の返り値を定数でもらうことができるオプションがある(HEAP_GENERATE_EXCEPTIONS)ので、これを回避することはできそうですが・・
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.