Torna indietro   Hardware Upgrade Forum > Software > Programmazione

FRITZ!Repeater 1700 estende la rete super-veloce Wi-Fi 7
FRITZ!Repeater 1700 estende la rete super-veloce Wi-Fi 7
FRITZ!Repeater 1700 porta il Wi-Fi 7 dual-band nelle case connesse. Mette a disposizione fino a 2.880 Mbit/s su 5 GHz e 688 Mbit/s su 2,4 GHz, integrazione Mesh immediata via WPS con FRITZ!Box e funzioni smart come MLO per bassa latenza. Compatto, plug-and-play e pronto per il futuro, è la soluzione ideale per chi vuole coprire ogni angolo senza cavi o complicazioni
Fondazione Chips-IT, l'Italia alla riscossa nei chip. Il piano e la partnership EssilorLuxottica
Fondazione Chips-IT, l'Italia alla riscossa nei chip. Il piano e la partnership EssilorLuxottica
La Fondazione Chips-IT ha presentato a Pavia il piano strategico 2026-2028 per rafforzare l'ecosistema italiano dei semiconduttori. Con un focus su ricerca, design, talenti e infrastrutture, la Fondazione punta a consolidare il ruolo dell'Italia nel Chips Act europeo, sostenendo innovazione, collaborazione industriale e sovranità tecnologica.
Nutanix: innovazione, semplicità e IA al centro della strategia hybrid multicloud
Nutanix: innovazione, semplicità e IA al centro della strategia hybrid multicloud
Al Museo Alfa Romeo di Arese, Nutanix ha riunito clienti, partner ed esperti per .Next On Tour Italia e per mostrare come l’infrastruttura hybrid multicloud possa diventare il fondamento dell’innovazione, con una piattaforma capace di unificare applicazioni tradizionali, moderne architetture cloud-native e nuovi scenari basati sull’intelligenza artificiale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 29-02-2008, 13:22   #1
diego86
Senior Member
 
L'Avatar di diego86
 
Iscritto dal: Mar 2004
Città: Milano
Messaggi: 415
[C] liste e funzioni

Ho un problema con le funzioni di inserimento in una lista ordinata.
Devo inserire in una lista di assex vuota, una lista di asse y vuota alla quale assegnerò una biglia. Il problema è che il tutto funziona, assegno la biglia, ma poi tornando alla funzione chiamante, il puntatore alla nuova struttura rimane NULL.

void inseriscix(struct assex *pl, int x, int y, struct biglia *b)
{ if(pl==NULL) {
pl=malloc(sizeof(struct assex));
(*pl).x=x;
(*pl).nextx=NULL;
(*pl).nexty=NULL;
inserisciy((*pl).nexty,x,y,b);
return;
}
}

void inserisciy(struct assey *pl, int e, int z, struct biglia *b)
{ if(pl==NULL) {
pl=malloc(sizeof(struct assey));
(*pl).x=e;
(*pl).y=z;
(*pl).nexty=NULL;
(*pl).b=b;
return;
}
}

Quindi inseriscix richiama inserisciy che assegna correttamente la biglia (ho verificato con il debug), ma quando ritorna il comando a inseriscix, mi da che (*pl).nexty = NULL invece che puntare all'indirizzo della nuova struttura creata dalla funzione inserisciy.
Lo stesso problema lo riscontro nel ritorno da inseriscix al main.
dov'è l'errore? grazie..
__________________
Ho concluso con Worp, -V3G3TA-, Marco911, TheDragon81, ciociola
------------------------------------------------
Diego
diego86 è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 15:00   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Leggi qui:
http://www.hwupgrade.it/forum/showpo...28&postcount=3
Ti trovi davanti alla stessa situazione, il valore assegnato a pl, in entrambi i casi, viene perso perché hai passato il puntatore pl per valore. O passi pl per indirizzo o ritorni pl alla fine della funzione.

Attenzione: (*pl).x equivale a pl->x
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 15:24   #3
diego86
Senior Member
 
L'Avatar di diego86
 
Iscritto dal: Mar 2004
Città: Milano
Messaggi: 415
struct assey* inserisciy(struct assey *pl, int e, int z, struct biglia *b)
{ if(pl==NULL) {
pl=malloc(sizeof(struct assey));
(*pl).x=e;
(*pl).y=z;
(*pl).nexty=NULL;
(*pl).b=b;
return pl;
}
}

perchè non funziona nemmeno così??
__________________
Ho concluso con Worp, -V3G3TA-, Marco911, TheDragon81, ciociola
------------------------------------------------
Diego
diego86 è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 15:29   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Come hai richiamato quella funzione ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 15:45   #5
diego86
Senior Member
 
L'Avatar di diego86
 
Iscritto dal: Mar 2004
Città: Milano
Messaggi: 415
void inseriscix(struct assex *pl, int x, int y, struct biglia *b)
{ if(pl==NULL) {
pl=malloc(sizeof(struct assex));
(*pl).x=x;
(*pl).nextx=NULL;
(*pl).nexty=NULL;
(*pl).nexty=inserisciy((*pl).nexty,x,y,b);
return;
}
}
__________________
Ho concluso con Worp, -V3G3TA-, Marco911, TheDragon81, ciociola
------------------------------------------------
Diego
diego86 è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 15:52   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
La stessa cosa la devi fare anche per inseriscix, altirmenti il chiamante non trova pl modificato
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 15:55   #7
diego86
Senior Member
 
L'Avatar di diego86
 
Iscritto dal: Mar 2004
Città: Milano
Messaggi: 415
si ma con questo codice, all'interno di inseriscix, al termine della funzione mi da che pl contiene la x corretta e due puntatori a null...
quello a nextx giustamente, ma quello a nexty (viste le modifiche di inserisciy) dovrebbe essere diverso da null..

ho riprovato e funziona... grazie mille...adesso modifico anche inserisci x per il ritorno al main...speriamo tutto bene
__________________
Ho concluso con Worp, -V3G3TA-, Marco911, TheDragon81, ciociola
------------------------------------------------
Diego

Ultima modifica di diego86 : 29-02-2008 alle 16:13.
diego86 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


FRITZ!Repeater 1700 estende la rete super-veloce Wi-Fi 7 FRITZ!Repeater 1700 estende la rete super-veloce...
Fondazione Chips-IT, l'Italia alla riscossa nei chip. Il piano e la partnership EssilorLuxottica Fondazione Chips-IT, l'Italia alla riscossa nei ...
Nutanix: innovazione, semplicità e IA al centro della strategia hybrid multicloud Nutanix: innovazione, semplicità e IA al ...
Lenovo LOQ 15i Gen 10 (15IRX10) alla prova: il notebook gaming 'budget' che non ti aspetti Lenovo LOQ 15i Gen 10 (15IRX10) alla prova: il n...
Due mesi di Battlefield 6: dalla campagna al battle royale, è l'FPS che stavamo aspettando Due mesi di Battlefield 6: dalla campagna al bat...
Questo PC portatile gaming è un vero mos...
NVIDIA si prende Slurm: con l'acquisizio...
DHRUV64: primo processore RISC-V dual-co...
Tineco e Dreame di nuovo in offerta: le ...
Amazon Haul rilancia: sui nuovi arrivi s...
Il prezzo della Steam Machine potrebbe e...
Ratti con una postazione da gaming enthu...
Samsung Galaxy S26: a causa dell'IA potr...
Xiaomi esagera: in arrivo uno smartphone...
La crisi delle memorie colpirà an...
I giovani russi non ci stanno: ondata di...
Dal sogno della guida autonoma al fallim...
Antitrust UE: maxi multa da 72 milioni a...
Il futuro dei chip è verticale: R...
Accenture e Anthropic insieme per aiutar...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 09:31.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v