【发布时间】:2019-03-15 22:24:57
【问题描述】:
我一直在关注这个应用程序,我试图复制这个程序并看看它做了什么。
令我大吃一惊的是,我发现它不起作用!
程序如下:
#include<stdio.h>
#include<stdlib.h>
#include<pthread.h>
#include <time.h>
#define TANTI 10
int parametroOUT;
void* codice(void *arg){
srand(time(NULL));
parametroOUT=(rand()%6)+1;
pthread_exit((void*)¶metroOUT);
}
int main(){
int dadoEstratto, *risultato=0;
pthread_t t1;
pthread_create(&t1,NULL,codice,NULL);
pthread_join(t1, (void*) &risultato);
printf("dado estratto: %d",*risultato);
return 0;
}
它在以下行返回错误:pthread_join(t1, (void*) &risultato);。
错误是:
[错误] 从 'void*' 到 'void**' 的无效转换 [-fpermissive]
我该如何解决这个错误?
【问题讨论】:
-
这看起来更像
c而不是c++。 -
恢复了标签编辑——错误信息表明 OP 正在使用 C++ 编译器
-
@M.M 那是我的错误;感谢您纠正我
标签: c++ multithreading pthreads