谁能帮我理解为什么我的代码在第一个代码块中的 delete[] szPassword 上失败了?我知道szPassword只是复制“a”,st2等于8:
TCHAR *szPassword = new TCHAR[2]();
StringCchCopy(szPassword, 2, L"ab");
SIZE_T st2 = sizeof(szPassword);
SecureZeroMemory(szPassword, st2);
delete[] szPassword;
但是,当它运行时,没有获取 sizeof() 值,它可以正常工作:
TCHAR *szPassword = new TCHAR[2]();
StringCchCopy(szPassword, 2, L"ab");
SecureZeroMemory(szPassword, 2);
delete[] szPassword;