当前位置: 技术问答>linux和unix
一个简单的线程程序,找错误。
来源: 互联网 发布时间:2017-01-23
本文导语: #include #include int num1,num2; void * mythread(* attr) { int * num=(int *)attr; printf("%d n",*num); } int main(int agrc,char *argv[]) { pthread_t tid1,tid2; int status; num1 = 1; num2 = 2; status = pthread_create(&tid1,NULL,mythread,&num1); if(status){ printf("cr...
#include
#include
int num1,num2;
void * mythread(* attr)
{
int * num=(int *)attr;
printf("%d n",*num);
}
int main(int agrc,char *argv[])
{
pthread_t tid1,tid2;
int status;
num1 = 1;
num2 = 2;
status = pthread_create(&tid1,NULL,mythread,&num1);
if(status){
printf("create failed!");
return -1;
}
status = pthread_create(&tid2,NULL,mythread,&num2);
if(status){
printf("create failed!");
return -1;
}
status = pthread_join(tid1,NULL);
if(status){
printf("error!");
return -1;
}
status = pthread_join(tid2,NULL);
if(status){
printf("error!");
return -1;
}
return 0;
}
gcc后提示:
pthread_join.c: In function ‘main’:
pthread_join.c:17:37: error: ‘mythread’ undeclared (first use in this function)
pthread_join.c:17:37: note: each undeclared identifier is reported only once for each function it appears in
|
void * mythread(* attr)
不是一个函数的声明或定义
不是一个函数的声明或定义