Яка різниця між функцією 'int main ()', 'void main ()' та 'main ()' в мові програмування C?


Відповідь 1:

Стартовий код, який викликає main, очікує, що він поверне int. Якщо це не редагування посилання, не вдасться. Якщо ви не заявите його з int, воно все одно поверне int. Це так, що компілятор C сумісний з K&R C. Якщо ви оголосите це недійсним, то редагування посилань не повинно. Int argc, char ** argv, char ** envp необов’язковий, але головний повинен завжди повертатися до int.If ви викликаєте abort (), вихід () або _exit () main ніколи не повернеться. Однак у мене завжди є віддача в main (), навіть якщо вона ніколи не досягнута. Низькі 8 біт повернутого значення - це те, що пожинається після завершення програми. І.е. нуль для успіху або не нуль для відмови. Якщо немає жодного з батьківських процесів для пожинання, вони збираються за допомогою init reaps, що відкидає результат.

Я зазначив, що Gcc, Glibc та GNU / Linux, які void main () {} повертають статус 1, що означає збій, але під час компіляції немає попередження про посилання. Існує надія для попередження про посилання, щоб код можна було перевірити.


Відповідь 2:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 3:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 4:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 5:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 6:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 7:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 8:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 9:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 10:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 11:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }


Відповідь 12:
  • main () {. . . } - ваш основний виконуваний метод - будь-який делегований іншим методам (як правило, кращим) або містить усе (лише для мізерних програм), саме тут і починається все. Що передує main () {. . . } тип повернення main () - такий самий, як і будь-який інший метод.

головний ()

головний ()

порожнеча

int main () {. . . }

ad infinitum

як

int main ()

0

void main () {. . . }

int main () {. . . }