私のコード:
wchar_t buffer[64];
wsprintf(buffer, L"%d, %d, %d", x, y, z);
SendMessage(hwndEdit, WM_SETTEXT, NULL, (LPARAM)buffer);
free(buffer); // <-- crashes
コードは、バッファを解放しない場合は問題なく動作しますが、free(buffer) を使用するとクラッシュします。
この行は必要ですか? そうでない場合は、なぜですか? 使用後にメモリを解放する必要はありませんか?