Ultima modifica da un moderatore:
Buonasera ragazzi, ho un piccolo problema con questa struttura dati dinamica. In pratica vorrei far diventare questa funzione ricorsiva, in modo iterativo. Qualcuno riesce ad aiutarmi? posto il codice:
questa è invece la funzione:
l'allocazione avviene nel main nel seguente case:
grazie a chi mi può aiutare!!
C:
typedef char string[SIZE];
// Creo la struttura per contenere i contatti
typedef struct{
string nome;
string cognome;
string telefono;
string email;
string sitoweb;
} t_contatto;
// Creo la struttura per creare la lista
typedef struct nodo{
t_contatto inf;
struct nodo *pun;
} Nodo;
typedef Nodo * Lista;
questa è invece la funzione:
C:
void InserisciContatto(Lista *pLista, Nodo * info)
{
if (!(*pLista))
*pLista = info;
else if (strcmp(info->inf.cognome, (*pLista)->inf.cognome)>0)
InserisciContatto(&((*pLista)->pun), info);
else
{
info->pun = *pLista;
*pLista = info;
}
}
l'allocazione avviene nel main nel seguente case:
C:
case 2:
p = (Nodo*) malloc(sizeof(Nodo));
p->pun =NULL;
LeggiContatto (&p->inf);
InserisciContatto(&lista, p)
break;
grazie a chi mi può aiutare!!