linux下c、c++下多线程编译? (linux c 线程支持 多核应用)

C语言要求除main函数外 所有的函数必须先声明才能使用 你可以在函数定义的时候一起声明这个函数 但是在这个函数定义之前不能使用这个函数

下面用通俗点的语言讲: 你在main函数中调用了thread函数, 但是如果你把void *thread(void *vargp);删掉了, 那么编译器就找不到这个函数了(因为编译器是从前往后编译这个程序的) 因此编译器是通不过的

有两种方法, 一种就是像你之前写的 先声明这个函数 第二种是把void *thread(void *vargp){…}放到main函数的前面.

有些返回值和参数类型为int型的函数也可以不用声明, 编译器也能通过, 不过这是不建议的 也是不符合标准的

标准建议每个函数都应该给出它们的显式的声明

希望你懂了 嘿嘿


数据运维技术 » linux下c、c++下多线程编译? (linux c 线程支持 多核应用)