Другие языки программирования и технологии
уважаемые программеры! у меня вопрос по Dev C++! возможно он покажется глупым....
для чего существуют операторы "void main ()" и "int main ()" ? и какая между ними разница? может кто ссылочку даст на толковый справочник...
void main() - это процедура, а
int main() - это функция.
В чем их главное отличие? В том, что процедура не может возвратить результат, а функция может. В данном случае функция int main() возвратит значение целого типа.
Рассмотрим простой пример. Вычисление, скажем, суммы двух чисел a и b.
Допустим, есть функция, которая складывает эти числа. Так как это функция, то она должна возвратить результат.
int sum (int a,int b)
{
return (a+b);
}
Теперь, если написать так:
int a = 1;
int b = 2;
int c = sum(a,b);
то в переменной c будет 3.
С процедурой такого сотворить нельзя. Их используют для разбития программ на более мелкие подпрограммы, что существенно облегчает процесс программирования. Такой подход называется "функциональным программированием"
int main() - это функция.
В чем их главное отличие? В том, что процедура не может возвратить результат, а функция может. В данном случае функция int main() возвратит значение целого типа.
Рассмотрим простой пример. Вычисление, скажем, суммы двух чисел a и b.
Допустим, есть функция, которая складывает эти числа. Так как это функция, то она должна возвратить результат.
int sum (int a,int b)
{
return (a+b);
}
Теперь, если написать так:
int a = 1;
int b = 2;
int c = sum(a,b);
то в переменной c будет 3.
С процедурой такого сотворить нельзя. Их используют для разбития программ на более мелкие подпрограммы, что существенно облегчает процесс программирования. Такой подход называется "функциональным программированием"
main () - это не оператор. Это объявление главной процедуры. Тоесть, парадигма такова, что весь код есть процедура, и при запуске программы ОС вызывает main. Соответственно, void main явно указывает на то, что программа ничего не вернет, а int main - вернет целое значение. Возвращенные программой значения можно анализировать, например, в пакетном файле (*.bat в ОС семейства Microsoft, команда - IF ERRORLEVEL). Да, в скобочках можно и переменные указывать. Эти переменные - суть параметры командной строки, насколько я знаю. В Паскале еще поизголяться надо, чтобы командную строку получить, а тут вон как все просто.
Vladymyr Goron
ну да, было б оно всё так просто как кажется....
это не операторы. это объявление функции с именем main.. в первом случае ничего не возвращающей, во втором возвращающей значение типа int
Rahmatulla Nurullaev
обычно(точнее почти всегда) выполнение программы на С/С++ начинается именно с этой функции...
если писать int main() то необходимо(точнее -- правило хорошего тона) в конце функции явно возвращать 0(если все выполнилось успешно) или что-либо другое, если произошла ошибка.
если писать int main() то необходимо(точнее -- правило хорошего тона) в конце функции явно возвращать 0(если все выполнилось успешно) или что-либо другое, если произошла ошибка.
какая между ними разница
void main ничо не возращает.. типа return 0 не нужен а в другом int main () чото нада возвращать при выходе з функцыи, интересно а от куда взялся void main () там визард делает такой пример.. я неимию Dev C++! чо ет вопше за хрень такая. . :)
void main ничо не возращает.. типа return 0 не нужен а в другом int main () чото нада возвращать при выходе з функцыи, интересно а от куда взялся void main () там визард делает такой пример.. я неимию Dev C++! чо ет вопше за хрень такая. . :)
Vladymyr Goron
чёт я тебя не совсем понял =))
Похожие вопросы
- Почему проект в Dev C++ не компилируется?
- Помогите с программой Dev C++
- Как установить Boost на компилятор Dev C/C++
- dev c++. помогите плз сделать задачу найти наибольшую высоту треугольника из сторонами a,b,c
- Уважаемые программеры! Вопрос адресую сюда, т.к. Вы, прежде всего - математики от природы...,см. ниже:
- как в Dev C++ изменить цвет текста..или шрифт..?
- Зделать программу в dev c++
- Пузырьковая сортировка. Нужен код в Dev C++ 4.9.9.2 Отсортировать не менее 20 чисел по убыванию...
- Нет библиотеки Dev-C++ нет библиотеки mach.h компилятор MinGW где скачать стандартные библиотеки, и как установить?
- При компиляции программы вылетает Dev-C++. Что делать? И есть ли другие бесплатные, но годные её аналоги?
Это совершенно другая идеология и оно основанно на других абстракциях(в основном лямбда-исчисление)