Форум программистов, компьютерный форум CyberForum.ru

Функция main () {} - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ошибка в значении переменной, передаваемой в функцию http://www.cyberforum.ru/cpp-beginners/thread608319.html
Странный вопрос конечно, ошибка в функции (верней число), но я не могу понять почему не работает правильно. #include <iostream> #include <conio.h> using namespace std; int Add (int x, int y){ cout << "В функции Add(), получено " << x << " и " << y << "\n"; return (x+y); }
C++ Стеки- Ввести строку и вывести его в обратном порядке Ввести строку и вывести его в обратном порядке через стеки.Очень срочно нада.. http://www.cyberforum.ru/cpp-beginners/thread608310.html
C++ Сформировать из матрицы вектор по правилу
Помогите решить: дана матрица А(NxN), записанная в бинарный файл. Структура файла следующая: сначала записано значение N, а затем матрица А. Сформировать вектор В по следующим правилам: если аii<0(i=2,...,n-1),в качестве bi взять сумму элементов i-той строки матрицы, предшествующих aii, в противном случае - сумму элементов строки, следующих за aii. Полученный вектор дописать в файл.
C++ Ошибка при запуске приложения (0xc0150002)
Друзья! Прога нормально работала на XP. Потом я перешел на семёру: релиз нормально строится и запускается, а вот дебаг строится, но не запускается! Поиграл настройками студии - ничего. Погуглил - ничего вразумительного! Студия у меня 2005 - я вынужден использовать ее. Под 7 я установил ее нормально - SP1 и update по Vista(как рекомендовано поддержкой микрософта) Добавлено через 1 час 19...
C++ Передача лямбда в функции http://www.cyberforum.ru/cpp-beginners/thread608289.html
В чем смысл передачи лямбда выражения функции?auto square = (int x) { return x * x; }; std::cout << square(16) << std::endl;илиclass Foo { public: Foo(): _x(5) {} void doSomething() { auto lambda = (int x) { std::cout << _x * x << std::endl; };
C++ Запутался в ссылках Долго сижу и никак не могу понять в чём ошибка. Вот 3 файла. Они подключены правильно и работают. #include <iostream> #include <iomanip> #include <windows.h> #include <math.h> #include "string2.h" using namespace std; подробнее

Показать сообщение отдельно
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16833 / 5254 / 323
Регистрация: 30.03.2009
Сообщений: 14,145
Записей в блоге: 26
19.06.2012, 13:41     Функция main () {}
Что касается стандарта Си, то стандарт требует, чтобы main имел тип int и принимал ноль либо два аргумента. Возможно, что в Си++ такие же требования.

Цитата Сообщение от Leeto Посмотреть сообщение
1.void main () {}
2. int main () {return 0;}
3. int main() {}
4. main (void) {}
5. int main(int argc,char**argv)
6. int main(int argc,char*argv[])
В общем случае отработают все варианты, если только компилятор не запретит их компилировать. Варианты 3 и 4 являются эквивалентными для языка Си, т.к. по языку Си если не описан тип функции, то он неявно равен int'у (но так пишут только быдлокодеры и старые пердуны). В языке Си++ если не описан тип функции, то он равен void, а потому для Си++ эквивалентными являются варианты 1 и 4. Варианты 5 и 6 являются полностью эквивалентными (две разные формы записи одного и того же) и выбор между ними - лишь вопрос вкуса.

Резюмируя, можно ответить на вопрос, что в зависимости от потребностей (нужны argc/argv или не нужны) следует писать

C
int main (void) { ... ; return 0; }
либо

C
int main (int argc, char **argv) { ... ; return 0; }
либо

C
int main (int argc, char *argv[]) { ... ; return 0; }
В этом случае есть гарантия, что это дело сожрётся любым компилятором на любой операционной системе
 
Текущее время: 06:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru