堆内存分配崩溃与std :: wstring
我对std :: wstring内存分配有一个很大的问题。我尝试使用此代码时程序崩溃:
size_t size;
mbstowcs_s(&size, NULL, 0, buffer, _TRUNCATE);
wchar_t *buffer2 = (wchar_t*)malloc(size + 1);
mbstowcs_s(&size, buffer, buffer_size, buffer, _TRUNCATE);
buffer2[size] = ' ';
std::wstring data(buffer);
崩溃是在最后一行,如果我使用以下行不会发生:
std::wstring data(L"hello");
错误是内存堆分配失败,结果是程序崩溃。为什么?怎么了?
没有找到相关结果
已邀请:
3 个回复
杰黔轿缺
分配了一些字节 - 你不是一些
如果你使用的是c ++,那么正确的方法是:
氏脑
姬第柔炒