Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Funzione ricorsiva
Forum - C/C++ - Funzione ricorsiva - Pagina 3

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 22:42
Lunedì, 07/06/2010
Potresti studiarti le variabili globali, statiche locali e le variabili locali ...

PM Quote
Avatar
napco (Normal User)
Pro


Messaggi: 64
Iscritto: 16/04/2010

Segnala al moderatore
Postato alle 1:04
Martedì, 08/06/2010
Il tuo libro parla di record di attivazione, o di "vita" di una funzione? Sono concetti teorici che è bene comprendere per riuscire a programmare in maniera decente. In breve, quando una funzione A chiama una funzione B, che a sua volta chiama una funzione C, le funzioni vengono risolte in ordine inverso: Prima viene eseguita la funzione C. Al termine  il controllo ritorna al chiamante (return), ovvero alla funzione B. Al termine di questa, il controllo ritorna ad A e successivamente al programma principale. Nel caso di una funzione ricorsiva, A, B e C rappresentano la stessa identica funzione, chiamata però con parametri diversi.

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 9:29
Martedì, 08/06/2010
forse lui intende una cosa del tipo:

Codice sorgente - presumibilmente C++

  1. #include <stdio.h>
  2.  
  3. int roll (int);
  4.  
  5. int x = 2;
  6.  
  7. int main (void) {
  8.         printf("%d\n", x);
  9.         roll(x);
  10.         printf("%d\n", x);
  11.         return 0;
  12. }
  13.  
  14. int roll (int y) {
  15.         if (y == 0) {
  16.                 x = 0;
  17.                 return 0;
  18.         }
  19.         return roll (y-1);
  20. }


PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo