PDA

View Full Version : [c]push su lista...


mic85rm
18-01-2011, 00:26
struct posizione {
int x;
int y;
struct posizione *pun;
};
struct posizione *testa=NULL;

int push(struct posizione *p)
{
struct posizione *newp;
newp=(struct posizione *)malloc(sizeof(struct posizione));
if (newp!=NULL)
{
newp->x=p->x;
newp->y=p->y;
newp->pun=testa;
testa=newp; //non mi è chiaro questo passaggio
return 0;
}
else
{
return 1;
}
}





è corretto secondo voi?

tuccio`
18-01-2011, 00:55
quel passaggio non ha alcun effetto, ma che dovrebbe fare 'sta funzione?

creare un elemento, inizializzarlo coi valori in input e metterlo in testa? per metterlo in testa hai bisogno del puntatore al puntatore alla testa, non del puntatore alla testa, altrimenti non puoi modificarlo

mic85rm
18-01-2011, 01:06
l'ho modificata....ora è corretta?

tuccio`
18-01-2011, 10:38
yup

mic85rm
18-01-2011, 12:52
yup è un si?

tuccio`
19-01-2011, 20:43
sì :asd: