Ho risolto. ora quel confronto mi serviva per inserire elementi in un albero binario di ricerca. ecco il codice(la struttura dati è quella di prima)
static void newnode(symtab_node *t,char*n){
t=(symtab_node *)malloc(sizeof(symtab_node));
t->inizializzata=FALSE;
t->DX = NULL;
t->SX = NULL;
strcpy(n,t->nome);
}
static int symcomp(symtab_node *s, char * m){
int i;
i=strcmp(s->nome,m);
return i;
}
void tabinsert(symtab * s, char *name){
int i;
symtab_node *temp;
if( s != NULL ){
if(symcomp(*s,name)==0)
printf("Si vuole inserire un ogeetto già presente");//return false
else{
if(symcomp(*s,name)<0){
if((*s)->SX==NULL){
newnode((*s)->SX,name);
}
else tabinsert(*(s->SX),name);//qui
}
else{
if((*s)->DX==NULL){
newnode((*s)->DX,name);
}
else tabinsert(*(s->DX),name);//qui
}
}
}
}
mi da errore sulla ricorsione (dove ho messo '//qui' nel codice):
request for member `SX' in something not a structure or union
cosa vuol dire?