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

Return w funkcji void

Ostatnio zmodyfikowano 2016-11-30 12:20
Autor Wiadomość
Herbatnik4
Temat założony przez niniejszego użytkownika
Return w funkcji void
» 2016-11-30 10:13:06
Witam. Moze ktos wytłumaczyć co robi dokładnie return w tej funkcji?
Dana jest tablica: int tab[] = {1, 3, 5, 7}; .
Co zostanie wypisane na ekranie po wywołaniu: Funkcja(13, tab); ?
C/C++
void Funkcja( int a, const int * b )
{
    if( !a )
    {
        printf( "%d ", b[ 0 ] );
        return;
    }
    int * c = b;
    if( a % 4 == 0 )
    {
        printf( "%d %d ", b[ 0 ], b[ 1 ] );
        c += 2;
    }
    Funkcja( a / 2, c );
    printf( "%d ", b[ a % 4 ] );
}

wynikiem tego jest: 1 3 7 5 3

Co się dzieje po tym return?

Pozdrawiam


P-154328
karambaHZP
» 2016-11-30 11:28:19
return
 - powrót z funkcji do miejsca wywołania (oczywiście bez żadnej wartości).
P-154329
Herbatnik4
Temat założony przez niniejszego użytkownika
» 2016-11-30 12:03:53
A mógłby ktoś pomóc wytłumaczyć skad wzieły sie te liczby bo u mnie kompletnie nic nie wychodzi i nie wiem jak to policzyło?
P-154332
michal11
» 2016-11-30 12:20:48
ponieważ jest to funkcja rekurencyjna potrzebny jest warunek stopu żeby niemieć nieskończonej rekurencji, ten return to jest właśnie moment w którym rekurencja się zatrzyma.
P-154333
« 1 »
  Strona 1 z 1