Нет.Функция exit
никогда не возвращается, а завершает процесс, из которого она вызвана.Компилятор C не имеет интуитивного понимания этого и обрабатывает его как любую другую void
возвращающую функцию.
Это означает, что хотя exit
завершит вашу функцию, компилятор C не видит ее таким образом.Следовательно, он все еще будет хотеть правильного возврата, иначе он будет выдавать предупреждения / ошибки (с достаточно высоким включенным уровнем ошибок).Но это достаточно легко обойти
int myFunc() {
...
exit(exitCode);
return 42; // Never hit but keeps C compiler happy
}