Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Wywoływanie wcześniejszej funkcji.

Ostatnio zmodyfikowano 2018-03-18 00:19
Autor Wiadomość
wampa
Temat założony przez niniejszego użytkownika
Wywoływanie wcześniejszej funkcji.
» 2018-03-16 21:26:10
Witam wszystkich,

Od pewnego czasu borykam się z problem podczas pisania aplikacji.
Mianowicie chodzi mi o wywołanie funkcji, która już była wywołana. Trudno mi to opisać, więc podam kod:

C/C++
#include <iostream>

void ch1()
{
    int liczba;
    std::cout << "Podaj numer: " << std::endl;
    std::cin >> liczba;
    switch( liczba )
    {
    case 1: break;
    case 0: chapter(); break; // OK, chodzi mi o ten problem
    }
}
void chapter()
{
    int liczba;
    std::cout << "Podaj numer: " << std::endl;
    std::cin >> liczba;
    switch( liczba )
    {
    case 1: ch1(); break;
    case 0: break;
    }
}

int main()
{
    chapter();
    return 0;
}

Mam nadzieję, że widać mój problem.
Chodzi o funkcje ch1, którą wywołujemy z funkcji chapter. W ch1 "mamy" możliwość, za pomocą 0, wrócić do funkcji chapter. Oczywiście nie mamy takiej możliwości, bo nie wiem jak to zrobić.   
Szukałem rozwiązania, w każdy możliwy sposób i nic. Return oczywiście nie działa. Dzieliłem również funkcję na nagłówki ( myślałem, że coś to da ).
Nie chciałem pisać z tak błahego problemu, ale może ktoś bardziej ogarnięty wskaże mi prawidłową drogę.
Jeżeli możecie podzielić się wskazówką lub czymś co pomoże mi w dalszej zabawie w c++, będę wdzięczny.


P-170055
pekfos
» 2018-03-16 22:06:21
Zadeklaruj funkcję chapter() przed ch1().
C/C++
void chapter();
P-170056
wampa
Temat założony przez niniejszego użytkownika
» 2018-03-18 00:19:19
Dzięki za odpowiedz. O to mi chodziło. Temat do zamknięcia.
Takie proste a jednak się na tym zablokowałem.
P-170066
« 1 »
  Strona 1 z 1