0
我通過struct
到CreateThread()
函數。在另一臺機器上的相同的代碼工作正常。但在我的機器上,「SendItem
」總是變爲0xccccccc Bad Ptr>
。有誰知道爲什麼?CreateThread()奇怪地傳遞結構參數
....
myStruct mystruct;
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)SendItem,(LPVOID)&mystruct, 0, &thread);
...
DWORD WINAPI SendItem(LPVOID lpParam)
{
myStruct* SendItem= (myStruct*) lpParam;
...
}
struct myStruct
{
char Name [256];
int ID;
};
是不是的CreateThread的第三個參數()的函數?在我的例子中,'SendItem'實際上是'DWORD WINAPI SendItem(LPVOID lpParam)'和'(LPVOID)&mystruct'是'SendItem()'的參數' –
@MinKim這就是爲什麼你發佈* full *例子,而不是小片段無法編譯。 –
我得到錯誤C2440:'初始化':無法從'void *'轉換爲'mystruct *' –