C - управление достигает конца не пустой функции
Я пишу многопоточную программу, а для метода pthread_create требуется функция void*.
Я получаю предупреждение "контроль достигает конца недействительной функции", и я понимаю, почему (потому что у меня нет никакого официального оператора return)- мой вопрос действительно состоит в том, что я должен вернуть в этом случае?
Можно ли просто вернуть NULL? Я не думаю, что мое возвращаемое значение повлияет на что-либо еще в моей программе, но мне просто интересно, каков стандарт для того, чтобы избегать этого предупреждения при программировании с многопоточными программами.
2 ответа
Возврате NULL
это нормально, и это нормальный способ. Ничто не будет использовать возвращаемое значение, если вы не напишите код для его использования. NULL
является допустимым значением для void *
и если вам все равно, что это за значение, то единственное, что имеет значение, это то, что оно является действительным.
Попробуйте что-то вроде этого:
#include <pthread.h>
void* you_func( void* param ) {
// do stuff here ...
// and terminates as follows:
pthread_exit( NULL );
}
надеюсь, что это поможет вам.