1

Тема: Чому виводить спочатку int main а не int DoPrint?

Перший день вчу C++

#include <iostream>
using namespace std;

int DoPrint() {
    cout << "doprint()" << endl;
    return 0;
}

int main() {
    cout << "StartMain()" << endl;
    DoPrint();
    cout << "EndMain()" << endl;
    return 0;
}

ВИВОДИТЬ
StartMain()
doprint()
EndMain()
ЧОМУ САМЕ ТАК КОЛИ Я ВВІВ СПОЧАТКУ int DoPrint()
І ВИВЕСТИ СПОЧАТКУ МАЄ
doprint()
StartMain()
EndMain()
ВЗАГАЛІ МЕНІ ПРОСТО ЦІКАВО ЧОМУ ВИВОДИТЬ СПОЧАТКУ StartMain() а потім doprint() якщо друге я ввів першим

2

Re: Чому виводить спочатку int main а не int DoPrint?

Робота програми на С чи С++ завжди починається з функції main(), незалежно від того, в якому місці програми її розміщено. Решта функцій самі по собі не запускаються. Якби в тілі функції main() не було рядка DoPrint(); , то функція DoPrint() узагалі б не виконувалась, і текст «doprint()» не було б виведено на друк.

Що таке виклик функції, пояснювати потрібно? Коли програма при виконанні доходить до того місця, де викликається функція, то відбувається перехід на початок тіла тієї функції, а потім, коли робота функції завершиться, відбудеться перехід у те місце, звідки її викликали, і робота продовжиться з того місця далі.

Подякували: koala, leofun012

3

Re: Чому виводить спочатку int main а не int DoPrint?

можете цей крінж видалити з сайту? я тільки опублікував зрозумів в чому діло а видалити не можу

4

Re: Чому виводить спочатку int main а не int DoPrint?

Lanzo написав:

можете цей крінж видалити з сайту? я тільки опублікував зрозумів в чому діло а видалити не можу

ні, воно тепер навіки буде тут, я ще зараз в web archive додам

Подякували: kant12, leofun012

5

Re: Чому виводить спочатку int main а не int DoPrint?

Не переймайтесь. Ваше перше повідомлення містить код — для цього форуму це вже прогрес.

Подякували: koala1