读书人

线程函数要返回一个值如何做?

发布时间: 2012-06-03 16:59:40 作者: rapoo

线程函数要返回一个值怎么做???
#include "stdafx.h"
#include <iostream>
#include <windows.h>
using namespace std;



DWORD WINAPI Threadfun(LPVOID lpParam)
{
int b=55;
*lpParam =(LPVOID)b;
cout<<"Sub Thread"<<*((int *)lpParam)<<endl;

return 0;
}

int _tmain(int argc, _TCHAR* argv[])
{
int a= 100;
HANDLE hThread;
DWORD ThreadId;
hThread = CreateThread(NULL,0,Threadfun,&a,0,&ThreadId);
WaitForSingleObject(hThread,INFINITE);
CloseHandle(hThread);
cout<<a<<endl;
system("pause");
return 0;
}
这样编译不过啊, 提示什么非法简介寻址 ---20-

如果是一个结构体呢?----20---

[解决办法]
*(int*)lpParam =55;

读书人网 >C++

热点推荐