您的位置:首页 > 编程语言 > C语言/C++

C++中使用pthread.h头文件报错 - 无法解析的外部符号 __imp__pthread_create,该符号在函数 _main 中被引用

2017-09-07 17:24 6649 查看
C++ 中使用pthread.h头文件的方法 

下载 pthreads-w32-2-7-0-release.exe, 下载链接: 链接:http://pan.baidu.com/s/1kUYs2FX 密码:mcw2

下载后运行会解压生成三个文件夹 Pre-built.2、pthreads.2、QueueUserAPCEx

打开Pre-built.2文件夹,分别复制include文件夹和lib文件夹中的文件到 

VS安装目录下的\VC\include文件夹和\VC\lib文件夹中 或者 

VC6.0安装目录下的\VC98\include文件夹和\VC 98\lib文件夹中

包含头文件pthread.h后,运行可能会提示错误 
错误 1 error LNK2019: 无法解析的外部符号 __imp__pthread_create,该符号在函数 _main 中被引用 

此时需要在代码中加入
#pragma comment(lib, "pthreadVC2.lib")
1

运行即可通过。 

pthread.h头文件简单使用:
#include <iostream>
#include <pthread.h>
using namespace std;
#pragma comment(lib, "pthreadVC2.lib")

void * thread(void * a)
{
for (int i = 0; i < 30; i++)
{
printf("线程执行第 %d 次\n", i+1);
}
return NULL;
}

void main()
{
pthread_t id;
int ret = pthread_create(&id,NULL, thread, NULL);
if (ret != 0)
{
cout << "线程创建错误!" << endl;
exit(-1);
}
for (int i = 0; i < 30; i++)
{
printf("main函数执行第 %d 次\n", i+1);
}
pthread_join(id, NULL);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐