Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Dreame X60 Pro Ultra Complete: i bracci si estendono sempre di più
Dreame X60 Pro Ultra Complete: i bracci si estendono sempre di più
Dreame X60 Pro Ultra Complete implementa due bracci estensibili, per spazzola e moccio, che si spingono ben oltre quanto visto sino ad oggi permettendo una pulizia di casa ancor più capillare e precisa
TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati
TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati
La tecnologia SQD-Mini LED di TCL arriva sul taglio da 65 pollici con la serie C8L: 2040 zone, pannello WHVA 2.0 e un picco che alle rilevazioni delle sonde tocca i 4400 nit nel profilo Filmmaker e un HDR quasi perfetto
MSI Maestro 500 Wireless: ANC e 90 ore di autonomia a 70 euro
MSI Maestro 500 Wireless: ANC e 90 ore di autonomia a 70 euro
Wireless 2.4 GHz, Bluetooth 5.4, cancellazione attiva del rumore, design pieghevole e un'autonomia che mette in imbarazzo prodotti che costano il doppio. Le Maestro 500 non eccellono in nulla, ma offrono tutto. E a questo prezzo è difficile chiedere di più
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


Dreame X60 Pro Ultra Complete: i bracci si estendono sempre di più Dreame X60 Pro Ultra Complete: i bracci si esten...
TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati TCL 65C8L, la recensione del SQD-Mini LED da 440...
MSI Maestro 500 Wireless: ANC e 90 ore di autonomia a 70 euro MSI Maestro 500 Wireless: ANC e 90 ore di autono...
NL-LC1 è il primo dissipatore a liquido AIO di Noctua: silenzio è la parola d'ordine NL-LC1 è il primo dissipatore a liquido A...
Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con Android 15 e penna, dal prezzo super Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con ...
La PS6 si farà attendere: il lanc...
OnePlus non sente la crisi delle memorie...
I futuri iPhone 18 Pro potrebbero costar...
Bosch eBike Systems MY2027: a sorpresa a...
Amazon, le top 5 offerte del weekend per...
Sesto giorno di Prime Day anticipato Ama...
La scopa elettrica Roborock F25 Ultra sc...
Ho messo uno studio video con Intelligen...
Dreame Aqua10 Ultra Roller Complete punt...
Roborock Saros 20 Set sembra fuori categ...
Samsung Galaxy Z Fold 8: prezzi in salit...
NVIDIA mostra una comunità di rob...
Sony annuncia LYTIA L910, arriva il sens...
Ericsson, il 5G è l’infrastruttur...
Marvell punta tutto su TSMC A14: sar&agr...
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: 15:01.


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