void main, смотрю видео с ютюб канала SimpleCode у него компилируется, может потому что у меня g++?🙂
Может быть..
Понятно спасибо 🙂
вообще, ограничения на возможные объявления main возложены на компилятор, стандарт допускает вариации. То что оно не работает в конкретном компиляторе, вполне допустимо.
Понятно спасибо 🙂
В pure C майн возвращала void. в С++ - int - во имя pipeline если я правильно помню.
Везде main возвращает int, а void — очень архаичная форма, которая была принята дурным тоном ещё в начале 90-х.
что такое pipeline? 🙂
Это pipe. Без line
А что тут дурного, если функции нечего возвращать зачем лишний 0 возвращать 🙂
Это когда ты пишешь что-нибудь типа ls -la | grep myFile
Можешь почитать в инете на эту тему, её размусоливали уже лет двадцать где только можно.
Слышал что может для того чтоб какая-то внешняя программа или операционная система поняля что программа отработала корректно
В С++ спецификация на main пришла из С, естественно, а там ВСЕГДА main в юниксах возвращала int — код возврата процесса. Это при переносе в другие операционки стали разрешать что-то не возвращать вообще
В книгах по Си времен Александра Македонского писали void main(void)
Я ж все книги по С времён Александра читал...
а зачем в скобках передавать явно void, и так же видно что аргументов/параметров нет 🙂
ну как бы статус завершения программы
У K&R есть просто main(){} А такое объявление в Си неявно значит int main()
Это Си. Там все было для сверхчеловеков. И void тоже.
Потому что в С функция с пустыми скобками — это не функция без агрументов, а функция с неопределённым количеством аргументов, определяемым реализацией. А f(void) — без аргументов.
Да, кастати, в старом С функции вообще можно было не объявлять... считалось при этом, что она берёт неопределённое число аргументов и возвращает int (кажется так)
Похоже на JavaScript
Обсуждают сегодня