|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Nov 2012
Messaggi: 28
|
[C] vantaggi fscanf / sgets
Ciao a tutti... In molti esercizi in cui c'è la necessità di recuperare record da file nelle soluzioni spesso trovo che si utilizza il ciclo
while ( fgets(stringa, numerocaratteri, file) =! NULL) { sscanf(stringa, "operatoridiconversione", destinazione) } per prendere record da file e "spezzettarlo"??? In questo modo si salva il record del file in una stringa e successivamente si suddivide; ma a questo punto non è più comodo utilizzare direttamente while(!feof(f)) {fscanf(file, "operatoridiconversione", destinazione)} Si evita per esempio di fare il conteggio sul numero di caratteri che ci si aspetta... é la stessa cosa o mi perdo qualcosa ? o.O |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Dec 2009
Messaggi: 2487
|
è la stessa cosa, io domani ho l'esame di informatica (primo anno) al politecnico (torino) e l'esame verte proprio sul c.
il punto cruciale di solito è la lettura di un file, il metodo migliore è appunto la feof e poi usare fscanf |
|
|
|
|
|
#3 | |
|
Member
Iscritto dal: Aug 2004
Messaggi: 39
|
Quote:
Codice:
scanf("%d %s", &i, buffer);
__________________
Quello che davvero mi interessa è se Dio, quando creò il mondo, aveva scelta. |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
|
la fgets, mi raccomando, non la gets. mai usare la gets!!
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes] "Pirating software? Choose Microsoft!" |
|
|
|
|
|
#5 | |
|
Member
Iscritto dal: Aug 2004
Messaggi: 39
|
Quote:
__________________
Quello che davvero mi interessa è se Dio, quando creò il mondo, aveva scelta. |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jan 2010
Città: (MB)
Messaggi: 11971
|
puoi utilizzare anche :
Codice:
while(!feof(file)) oppure while((ch=getc(file)!=EOF)
__________________
CPU: Ryzen 3700x DISSY: CM HYPER EVO 212 RAM: 16gb DDR4 3000Mhz MOBO: MSI b350 tomahawk VGA: MSI Ventus 2X 4060TI 16GB ALI: Cooler Master V550 SSD: Samsung 970 Evo Plus Trattive+:(a) topolino2808(x2), galfum, giap959, sm_morgan, Biduzzo, huangwei, maxmax80, bubbi, dinamite2, PaxNoctis;(v) rubrie, CubeDs, Slater91, Juvanni, FireFox152, gluvocio, giulio81, emahwupgrade, Velvet, semmy83, giocher03 |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:30.




















