Fabietto206
25-01-2008, 15:13
In qst funzione:
/*funzione chiamata dalla inserisci(char*u)*/
nodo*insert_in_albero(nodo*p,char*u){
int x=strlen(u);
if (p==NULL){
/*riservo uno spazio per nodo*/
p=(nodo*)malloc( sizeof(nodo));
if(!p){
printf("Errore di allocazione\n");
}
else{
p->parola= strdup(u); /*copia la stringa u nella sringa p->parola*/
p->lung_parola=strlen(p->parola); /*prendi la lunghezza della stringa
p->parola e metti nel campo p->lung_parola*/
p->left=p->right=NULL;
q=p;
return p;
}
}
if(strcmp(u,p->parola)<0){ /*se u è lessicograficamente minore di p->parola
inseriscilo a sinistra*/
p->left=insert_in_albero(p->left,u);
return p;
}
else if(strcmp(u,p->parola)>0){ /*altrimenti inseriscilo a destra*/
p->right=insert_in_albero(p->right,u);
return p;
}
else {
printf(" %s è una parola già inserita\n",p->parola);
system("PAUSE");
p->parola=u;
return p;
}
}
mi da un errore in qst riga:
p->parola= strdup(u);/*copia la stringa u nella sringa p->parola*/
dicendomi: [Warning] assignment makes pointer from integer without a cast
come risolvo?
/*funzione chiamata dalla inserisci(char*u)*/
nodo*insert_in_albero(nodo*p,char*u){
int x=strlen(u);
if (p==NULL){
/*riservo uno spazio per nodo*/
p=(nodo*)malloc( sizeof(nodo));
if(!p){
printf("Errore di allocazione\n");
}
else{
p->parola= strdup(u); /*copia la stringa u nella sringa p->parola*/
p->lung_parola=strlen(p->parola); /*prendi la lunghezza della stringa
p->parola e metti nel campo p->lung_parola*/
p->left=p->right=NULL;
q=p;
return p;
}
}
if(strcmp(u,p->parola)<0){ /*se u è lessicograficamente minore di p->parola
inseriscilo a sinistra*/
p->left=insert_in_albero(p->left,u);
return p;
}
else if(strcmp(u,p->parola)>0){ /*altrimenti inseriscilo a destra*/
p->right=insert_in_albero(p->right,u);
return p;
}
else {
printf(" %s è una parola già inserita\n",p->parola);
system("PAUSE");
p->parola=u;
return p;
}
}
mi da un errore in qst riga:
p->parola= strdup(u);/*copia la stringa u nella sringa p->parola*/
dicendomi: [Warning] assignment makes pointer from integer without a cast
come risolvo?