- ベストアンサー
GlobalAlloc関数について
char *Buf; Buf = GlobalAlloc(GMEM_FIXED, 1000); このように指定するとエラーが出てしまうのですが、 BufにはHGLOBALではなくcharを使いたいのですが、無理なのでしょうか? 環境はBorlandです。 よろしくお願いします
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
GlobalAllocの使い方が違います。 mallocのように直にvoid*が返るわけではありません。 そのメモリ領域にアクセスするにはGlobalLockを 使います。 HGLOBAL hg = GlobalAlloc(GMEM_FIXED, 1000); if (hg){ Buf = (char*)GlobalLock(hg); strcpy( Buf , "test\n" ); printf(Buf); GlobalUnlock(hg); GlobalFree(hg); }
お礼
助かりました 参考になります! ありがとうございました。