我想知道如何将结构传递给线程。我编写了一个示例应用程序,在其中声明了一个结构main
并尝试将其传递给线程。
这是我的代码:
DWORD WINAPI Name1(LPVOID lparam)
{
data x;
x.name[15]="Sarah";
x.DOB="19/10/2007";
fputs(stdout,name,15);
fputs(stdout,DOB,15);
return 0;
}
int main()
{
struct data
{
char name[15];
char DOB[15];
};
HANDLE thread2;
DWORD threadID2;
thread2= CreateThread(NULL,0,Name1,(LPVOID *)data,0,&threadID2);
if(thread2==NULL)
{
cout<<"Couldn't Create Thread:("<<endl;
exit(0);
}
return 0;
}
不幸的是,我没有掌握将结构传递给线程的窍门:(如果有人帮助我,我将不胜感激。
我试图改变结构的数据类型来传递它,但是,我想我不知道该怎么做。