thread.c程序pthread_create函数第三个参数为线程函数的起始地址,文中并无add函数,源代码如下:
![2014-12-24 16:56:36 的屏幕截图.png wKiom1SaiH_BoPKlAADUU3OTYJ8972.jpg](https://i-blog.csdnimg.cn/blog_migrate/764f2b8c4a96ca36253a4e83f7ff01e6.jpeg)
thread.c编译时会报未声明错误:
![2014-12-24 17:49:04 的屏幕截图.png wKiom1SajCTCUDHBAAE0_xQ4Rqs094.jpg](https://i-blog.csdnimg.cn/blog_migrate/572574a5debaa8b4e99a72da48568927.jpeg)
根据语境推测应该是count,替换如下:
![2014-12-24 17:55:00 的屏幕截图.png wKiom1SajYLBhAM4AADBIuTlF24768.jpg](https://i-blog.csdnimg.cn/blog_migrate/d98c27451155b6611cf0c935c5c28683.jpeg)
重新编译,gcc编译时在最后加参数-lpthread,否则编译报对
pthread_create和pthread_join未定义的引用如下:
![2014-12-24 17:52:50 的屏幕截图.png wKiom1SajP6DI8G3AAFTRGH58Ps468.jpg](https://i-blog.csdnimg.cn/blog_migrate/ccba1da23ef1f7dcb5b8666dfce19163.jpeg)
应当是行末最后加入-lpthread编译,正确编译命令:
gcc -lpthread thread.c -o main
thread.go程序无z变量,应当是counter:
![2014-12-24 18:20:22 的屏幕截图.png wKioL1SalIbhm5-iAABZir4h82A627.jpg](https://i-blog.csdnimg.cn/blog_migrate/a0a7e51bc80ded290a2d4b4a1f995be8.jpeg)