为Retrieving the Last-Error Code MSDN上的代码示例说明此代码:为什么将40添加到传递给LocalAlloc的大小?
稍后用于
StringCchPrintf((LPTSTR)lpDisplayBuf,
LocalSize(lpDisplayBuf)/sizeof(TCHAR),
TEXT("%s failed with error %d: %s"),
lpszFunction, dw, lpMsgBuf);
我很好奇,想知道到底为什么这加入?
这是一些安全边界吗?或者微软试图告诉我们关于StringCchPrintf
的一些事情?或者是其他东西?
您需要为'dw'的所有可能数字加上文本信息本身。 '40'可能有点矫枉过正,但不是太多。 –
这是一个在硬敲门学院教授的做法。有人将本地化字符串,并几乎保证忘记注意数字。 StringCchPrintf()将始终让他摆脱困境,但德国的bug报告仍然存在一些可能性:) –