_beginthreadex 传参数
来源:百度知道 编辑:UC知道 时间:2024/09/21 02:48:10
unsigned int __stdcall show(LPVOID)
{
printf("OK........\n");
return 0;
}
int main(int argc, char* argv[])
{
int a=10;
HANDLE ha = (HANDLE)_beginthreadex(0,0,(unsigned int (__stdcall *)(void *))show,0,0,0);
MessageBox(0,"pause","",MB_OK);
return 0;
}
怎么把变量a 传入show函数里了
{
printf("OK........\n");
return 0;
}
int main(int argc, char* argv[])
{
int a=10;
HANDLE ha = (HANDLE)_beginthreadex(0,0,(unsigned int (__stdcall *)(void *))show,0,0,0);
MessageBox(0,"pause","",MB_OK);
return 0;
}
怎么把变量a 传入show函数里了
函数原型:
unsigned long _beginthreadex(
void *security,
unsigned stack_size,
unsigned ( __stdcall *start_address )( void * ),
void *arglist, /* 这个就是传给线程函数的参数的指针 */
unsigned initflag,
unsigned *thrdaddr );
HANDLE ha = (HANDLE)_beginthreadex(0,0,(unsigned int (__stdcall *)(void *))show,(LPVOID)&a,0,0);
unsigned int __stdcall show(LPVOID lpvoid)
{
int a= *(int *)lpvoid;/*需要传多个参数的时候,使用结构体*/
printf("OK........\n");
return 0;
}