Является ли хорошей практикой иметь файл main.c, в котором есть только основная функция, и никаких других функций, чтобы можно было связать все другие функции?
Если нет окончательного правила, когда это хорошо, а не делать?
Является ли хорошей практикой иметь файл main.c, в котором есть только основная функция, и никаких других функций, чтобы можно было связать все другие функции?
Если нет окончательного правила, когда это хорошо, а не делать?
В идеале вся работа, которую можно рассматривать как часть повторно используемого кода, должна создаваться в форме библиотеки . Баланс работы, это приложение, которое должно быть отдельным, где main()
будет находиться.
Но main()
одному не нужно сидеть в изоляции. Функции вроде parse_arguments(argc,argv)
должны быть вместе с основными, а не отдельными.
Наш стандарт кодирования требует, чтобы main () был в main.c. Другими методами в main.c обычно являются высокоуровневые обработчики ошибок и вспомогательные функции для main (см. Ответ @Dipan «parse_arguments», а также такие вещи, как «display_help» и т. Д.).
Хорошее правило: когда функция начинает делать больше, чем просто поддерживать работающее приложение и начинает делать бизнес-логику, пора выходить из main.c
Есть два практических правила:
Для реализации стандарта кодирования, утверждающего, что main () всегда должен находиться в файле с именем main.c, это хорошая и распространенная практика. Этот файл, как и сам main (), не должен содержать ненужных помех.
В идеале main () и main.c должны содержать только следующее
Чистая точка входа в отдельном файле позволяет легко понять и поддерживать поток кода. У меня всегда была эта привычка хранить очень маленькую и лаконичную функцию main () в другом файле, откуда я могу отслеживать шаги программы. Просто ради чистоты хорошо держать это отдельно.