funkcje c

0

witam
mam problem dotyczący wywołań funkcji, otóż obie funkcję wywołują siebie nawzajem , działają poprawnie ale kompilator wywala błędy :

  • implicit declaration of function 'f1 ' is invalid > -this function declaration is not a prototype
  • conflict types for function 'f1'

Przykład kodu :

void f2()
{
    f1();
}


void f1()
{
    f2();
}
1

W definicji funkcji f2 używasz funkcji f1 która w tym miejscu jeszcze nie jest znana. Dodaj deklarację tej funkcji na samym początku.

0

wtedy kod będzie zawierał trzy deklaracje dobrze rozumiem ?

void f1()
{
    f2();
}

void f2()
{
    f1();
}

void f1()
{
    f2();
}
1

Deklaracja wygląda tak:
void f1();
A to co ty masz to definicje.

1

użyj forward deklaracji

1 użytkowników online, w tym zalogowanych: 0, gości: 1