Добрый день. Подскажите, пожалуйста, является ли обязательным в С определение вида:
int main(void) {...}
или можно так:
int main() {...}
то есть без void? Вопрос заключается именно в обязательности!
Решено: параметры main в C.
Модератор: Модераторы разделов
-
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
Re: Решено: параметры main в C.
Стандарт C99 разрешает прототип main(void) или main с двумя параметрами. C89 - позволяет использовать прототип main().
Прототип main() означает, что функция принимает *неизвестное* число параметров. main(void) означает, что функция *не имеет* параметров вообще. C++ допускает использовать main(), которая равнозначна сишному main(void).
-
- Сообщения: 233
Re: Решено: параметры main в C.
Спасибо. То есть корректнее будет использовать main(void). Просто преподаватель снизил мне за это оценку 

-
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
Re: Решено: параметры main в C.
Следует спросить его о требованиях к используемой редакции стандарта C, после чего ткнуть его в текст конкретного стандарта. Полагаю - это будет последняя редакция ISO/IEC 9899: http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1336.pdf, раздел "5.1.2.2.1 Program startup".