我想创建无功能参数的线程,但我不断收到正在认真地缠着我的错误,因为我不能得到的东西超级简单的工作权pthread_create没有参数?
继承人我的代码:
#include<stdio.h>
#include<array>
#include<pthread.h>
#include<fstream>
#include<string>
void *showart(NULL);
int main(int argc, char** argv){
pthread_t thread1;
pthread_create(&thread1, NULL, showart, NULL);
getchar();
return 0;
}
void *showart(NULL)
{
std::string text;
std::ifstream ifs("ascii");
while(!ifs.eof())
{
std::getline(ifs,text);
printf(text.c_str());
}
}
它使错误:
main.cpp:11:50: error: invalid conversion from ‘void*’ to ‘void* (*)(void*)’ [-fpermissive]
您不需要在定义中命名'unused',这可以避免在某些编译器配置下获得未使用的警告。 – kfsone