此代码来 self 的项目。在与 swprintf_s
一起使用后,我无法理解 buffer
从哪里得到这个 (泛滥推理(10):) 垃圾值。
const char* m_filename = "Somename";
unsigned m_line = 10;
wchar_t buffer[256];
ZeroMemory(buffer, 256);
auto count = swprintf_s(buffer, L"%S(%d): ",
m_filename, m_line);
我使用的是 Visual Studio 2015 预览版。
最佳答案
swprintf_s 期望 wchar_t 字符串作为 '%S' 参数,而您传递的是 char 字符串,因此将两个字符视为单个字符wchar_t(即:'So' -> '潓')。
关于c++ - 为什么缓冲区获得垃圾值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28622501/