Ciao! Allora il problema del compilatore è risolto![]()
ne sorge uno didattico, e come al solito mi appello alla vostra saggezza....
Ovvero, io ho una procedura ricorsiva, tipo
int faiqualcosa(mio *uno)
{ static int ris = 0;
if (.....)
return ris;
if (...............)
return ++ris;
if (...) faiqualcosa(mio *altro)
else faiqualcosa(mio *altroaltro) }
e la prima volta il risultato è corretto, perchè static conserva il valore della variabile ris anche tra + di una chiamata della funzione a cui appartiene, e questo va bene nella ricorsione.
Solo che lo conserva anche quando richiamo faiqualcosa anche in altre parti del programma con parametri diversi!!
Qualcuno sa un tipo di dato o un algoritmo x poter avere zero come valore di ris in partenza anche quando chiamo faiqualcosa non da se stessa e non per la prima volta?
Grazie10000!