在 Windows 的FormatMessage()函数中,参数:
_Out_ LPTSTR lpBuffer
正在努力。按照 Hart 的 Windows 系统编程书,我声明一个LPTSTR
指针用作lpBuffer
(例如LPTSTR errortext;
),然后调用该FormatMessage()
函数。
传入这个参数的正确方法是:(LPTSTR)&errorText
这工作正常。但我不明白为什么我需要写(LPTSTR)
。我知道这是类型转换,我读过它,但这对我来说没有意义,因为我没有更改变量类型或任何东西,我将它声明为 anLPTSTR
并且我将它的内存地址传递给函数,函数期望 anLPTSTR
并且我将它传递给了LPTSTR
,那么为什么我需要将(LPTSTR)
其作为lpBuffer
参数的一部分呢?