|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Sep 2008
Messaggi: 3
|
[C] problema funzione in un prog che usa linked list
salve avrei un problema con un programma che realizza una lista..
posto solo le dichiarazioni e la funzione con cui ho problemi Codice:
typedef char data[20];
typedef struct nominativo{
data cognome;
int orario;};
typedef struct linked_list{
nominativo appuntamento;
struct linked_list *next;};
typedef struct linked_list element;
typedef element *link;
char cancellazione (link *nuovo,data valore)
{
link prec;
link punt;
link temp;
if( valore == ((*nuovo)->appuntamento.cognome) )
{
temp=*nuovo;
*nuovo=(*nuovo)->next;
free(temp);
return *valore;
}
else{
prec=*nuovo;
punt=(*nuovo)->next;
while( (punt != NULL) && ((punt->appuntamento.cognome) != valore))
{
prec=punt;
punt=punt->next;
}
if(punt!=NULL)
{
temp=punt;
prec->next=punt->next;
free(temp);
return *valore;
}
}
}
Sono agli inizi e credo si veda spero qualcuno mi aiuti, thanks. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
|
per il confronto di strighe devi usare la funzione strcmp o strncmp
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
|
|
|
|
|
|
#3 |
|
Junior Member
Iscritto dal: Sep 2008
Messaggi: 3
|
ho provato anche così, ma mi sa che il problema sta nel richiamare il membro cognome del nodo.. perchè nell'if la funzione non entra proprio come se non trovasse l'uguaglianza tra "valore" e "(*nuovo)->appuntamento.cognome)".
Usando strcmp comunque non entra nell'if. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Come lo usi strcmp()? Tieni presente che le stringhe a, b sono uguali se e solo se è strcmp(a, b) == 0.
ciao P.S.: alternativamente puoi dare un'occhiata a strcasecmp(), che fa lo stesso lavoro di strcmp(), ma non considerando la differenza maiuscole/minuscole.
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#5 |
|
Junior Member
Iscritto dal: Sep 2008
Messaggi: 3
|
ecco
grazie mille, ora si che funziona!! |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Di niente, è uno degli errori più comuni per chi inizia, dovevo precisare.
ciao
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:49.











ho concluso con: kvegeta, doctordb, Leland Gaunt.








