8

我正在编写一个线程程序,而 pthread_create 方法需要一个 void* 函数。

我收到“控制到达非无效函数的末尾”警告,我明白为什么(因为我没有任何正式的返回声明)——我的问题真的是在这种情况下我应该返回什么?

只返回NULL可以吗?我不认为我的返回值会影响程序中的任何其他内容,但我只是想知道在使用多线程程序进行编程时避免此警告的标准是什么。

4

2 回答 2

9

退货NULL很好,是正常的方式。除非您编写代码来使用它,否则什么都不会使用返回值。NULL是 的有效值void *,如果您不关心该值是什么,那么唯一重要的是它是有效值。

于 2014-09-27T00:38:28.107 回答
4

尝试这样的事情:

#include <pthread.h>

void* you_func( void* param ) {
   // do stuff here ...
   // and terminates as follows:
   pthread_exit( NULL );
}

希望对你有帮助。

于 2017-04-06T16:01:47.923 回答