Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla
Una ammiraglia elettrica, da sei o sette posti, con il comfort di viaggio come missione assoluta. Un'auto non per tutti, ma di cui ti innamori dopo pochi giorni, ecco com'è andata la nostra prova di lunga durata
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode
Hyper Mini LED con 2.304 zone, DisplayPort 2.1 e Dual Mode: 5K a 165 Hz oppure QHD a 330 Hz: LG propone un monitor da gioco ma dalla buona versatilità creativa, con prestazioni interessanti e un listino di 1.220 euro. Peccato l'alimentatore ingombrante
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio
Motorola edge 70 Fusion FIFA World Cup 26 Edition porta la maglia iridata su uno smartphone accessibile: display Extreme AMOLED da 6,78 pollici a 144Hz, fotocamera Sony LYTIA 710 con moto ai, Snapdragon 7s Gen 3 abbinato a 8GB di RAM, batteria da 5200 mAh con ricarica TurboPower a 68W e certificazione IP68/IP69, il tutto in una veste PANTONE Silhouette con logo dorato a 24 carati, moto buds bass incluse in confezione e contenuti software dedicati ai Mondiali 2026
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-02-2002, 23:02   #1
marcus81
Senior Member
 
L'Avatar di marcus81
 
Iscritto dal: Dec 2001
Città: Partinico(PA)-Torino
Messaggi: 2885
Dubbio di C...

Dunque ho trovato in un esercizio una funzione dichiarata in questo modo:
int leggifile(char *nomefile, Tree **root)...
non riesco a capire come mai mette i due asterischi...non dovrebbe usarne solo uno?ha qualke particolare funzionalità??

Poi volevo chiedervi:
ma nel return come espressione si può utilizzare anke una funzione?? x esempio return leggi(......)???e in questo caso a che servirebbe??

Grazie mille!
__________________
Main: Barton 2500@3200+ Asus A7N8X-dlx 2*512 DDRPowercolor 9800Pro Maxtor 80GB sATA + Seagate 160GB pATA LCD Acer AL1721 Epson C62 Antec T.P. 430w Tin.it ADSL Muletto: Pentium4 1800 Notebook: Idea Progress P4 Auto e moto d'epoca
marcus81 è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2002, 00:11   #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
Sì...quello che segue il return è una normale espressione e può contenere qualsisi chiamata a funzione...

Per il doppio * sincramente non capisco...
Con doppio asterisco puoi passare un vettore di puntatori, ma non mi sembra questo il caso...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2002, 01:16   #3
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
Probabilmente il doppio puntatore server per poter usare l'argomento per ritornare un puntatore alla radice dell'albero creato.
Forse se mostro come viene usato si vede meglio:

Tree* root; // qui root contiene pattume
int err = leggifile( "file.dat" , &root );
// ora root contiene un puntatore all'albero

Avendo passato un puntatore a root questo puo' essere modificato dalla funzione con un "valore di ritorno".
Il fatto che si usi in questo modo invece che con una dichiarazione del tipo
int leggifile( char* , Tree* )
( e quindi venga usata dopo cosi':
Tree root;
int err = leggifile( "file.dat" , &root );
)
sta nel fatto che per strutture pesanti di solito di manipolano tramite puntatori.
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2002, 01:19   #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
Giusto...non ci avevo pensato perchè io lo passerei per riferimento quel parametro...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2002, 08:52   #5
marcus81
Senior Member
 
L'Avatar di marcus81
 
Iscritto dal: Dec 2001
Città: Partinico(PA)-Torino
Messaggi: 2885
Ragazzi: scusatemi ma ci ho capito poco....nello stesso esercizio la chiamata di funzione è:

x=leggifile(nomefile, &root)

...quindi è una chiamata normale...intanto il programma funziona perfettamente...

poi ce n'è un'altra pure:

int insert(TREE **, int) e la chiamata è

x=insert(&root, dato).... non riesco a capire....
__________________
Main: Barton 2500@3200+ Asus A7N8X-dlx 2*512 DDRPowercolor 9800Pro Maxtor 80GB sATA + Seagate 160GB pATA LCD Acer AL1721 Epson C62 Antec T.P. 430w Tin.it ADSL Muletto: Pentium4 1800 Notebook: Idea Progress P4 Auto e moto d'epoca
marcus81 è offline   Rispondi citando il messaggio o parte di esso
Old 09-02-2002, 11:03   #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
Ti faccio un esempio...

Tree *root;
...
...
...
spostaSx(&root);
...
...
...


int spostaSx(Tree **t)
{
//questo è solo un codice di esempio
if((*t)->sx)
{
(*t) = (*t)->sx;
return 1;
}
return 0;
}

Dentro la funzione t è un puntatore ad un puntatore ad una istanza di tipo Tree...

Quindi all'interno della funzione *t è il puntatore ad una istanza di tipo Tree...

(*t)->dato, (*t)->sx, (*t)->dx sono i membri del Tree puntato

oppure

(*(*t)).dato, (*(*t)).sx, (*(*t)).dx

Viene passato in questo modo per ritornare al chiamante l'eventuale cambiamento della posizione puntata da root...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2002, 21:12   #7
-=Krynn=-
Senior Member
 
L'Avatar di -=Krynn=-
 
Iscritto dal: Dec 2001
Città: Firenze - Nosgoth
Messaggi: 7333
il mio prof all'uni c'ha insegnato a programmare coi doppi puntatori, quindi io lo trovo del tutto normale.
In quel modo è anche + pericoloso, perchè col doppio puntatore ti puoi modificare la variabile senza che te ne avevi voglia...
__________________
Xbox GamerTag: Falux || Psn: Falux79 || -=Krynn=-
-=Krynn=- è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2002, 22:10   #8
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
Quote:
Originariamente inviato da cionci
[b]Giusto...non ci avevo pensato perchè io lo passerei per riferimento quel parametro...
Penso pero' che i riferimenti siano prerogativa del C++, non del C ( non ne sono pero' sicuro ! ).
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 12-02-2002, 07:42   #9
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
Quote:
Originariamente inviato da /\/\@®¢Ø
[b]
Penso pero' che i riferimenti siano prerogativa del C++, non del C ( non ne sono pero' sicuro ! ).
Mh, non lo so nemmeno io...
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e...
Motorola edge 70 Fusion FIFA World Cup 26 Edition: un ottimo smartphone per i fan del calcio Motorola edge 70 Fusion FIFA World Cup 26 Editio...
Renault 5 elettrica al giudizio definitivo: solo stupore iniziale o premi meritati? Renault 5 elettrica al giudizio definitivo: solo...
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
Perché tutti stanno mettendo una foglia ...
Zeekr 7X a fuoco: batteria più sicura de...
L'uomo su Marte: Perseverance sta per po...
SCTPhantom è il bug del 2008 che ...
Un agosto caldissimo anche per le offert...
MOVA E40 Ultra a 279€: robot aspirapolve...
Una versione di Microsoft Word del 1990 ...
Anche Kimi K3 evade dall'ambiente di tes...
L'app Meteo di Windows 11 usa 5 volte la...
L'IA sostituirà i programmatori? Il gran...
Recensione Halo: Campaign Evolved, l'ori...
Tineco FLOOR ONE S7 Pro a 236€: scende a...
Niente AI slop per Oracle: blocco totale...
Canon RF 300-600mm f/5.6L: forse a sette...
Dreame Aqua10 Ultra Roller Complete torn...
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: 12:00.


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