Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Il primo Micro RGB di Samsung per il salotto è il 65 pollici da 2.749 euro. Sul banco di misura abbiamo rilevato 2.000 nit di picco, nero assoluto con il local dimming e il 91,4% del BT.2020, il colore più ampio che abbiamo misurato su un LCD
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
Apple ha rinnovato iPhone 18 Pro soprattutto dentro: chip A20 Pro a 2 nm con memoria affiancata al SoC, camera di vapore tre volte più ampia, Dynamic Island più piccola del 25% grazie a Face ID sotto il display e fotocamera principale con diaframma variabile da f/1.48 a f/4. Lo abbiamo misurato al colorimetro e nei benchmark, usato con iOS 27 e messo alla prova in fotografia tra laghi, borghi e interni poco illuminati
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
A Londra, per il trentennale dei Toughbook, Panasonic ha presentato il tablet G3 e il 2-in-1 34. Con Jon Tucker, a capo dell'ingegneria europea, abbiamo parlato di ciò che non si vede: batterie, antenne, porte seriali e accorgimenti nati sul campo
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-12-2008, 18:23   #1
Tomsl
Member
 
Iscritto dal: Mar 2007
Messaggi: 53
[C] aprire molti file

ciao a tutti, mi servirebbe una mano, dovrei aprire molti file e evitare di fare tanti puntatori diversi, pensavo di fare una specie di array. questo e quello che scrivo ma ovviamente è sbagliato! volevo sapere se e possibile fare una cosa del genere! perchè vorrei passare a altre funzioni solo un puntatore!
sicuramente mi sono spiegato male quindi vi scrivo il codice magari mi capite meglio e se potete mi date alternative grazie!


FILE dati[27][4];


dati[0][0] = fopen ( "/Users/Tom/Tesi/DIVISI/AHP-15m.tom","r");
dati[0][1] = fopen( "/Users/Tom/Tesi/DIVISI/AHP/AHP-15m-1.tom","r");
dati[0][2] = fopen( "/Users/Tom/Tesi/DIVISI/AHP/AHP-15m-2.tom","r");
dati[0][3] = fopen( "/Users/Tom/Tesi/DIVISI/AHP/AHP-15m-3.tom","r");
dati[1][0] = fopen ( "/Users/Tom/Tesi/DIVISI/AIG-15m.tom","r");


grazie ancora!
Tomsl è offline   Rispondi citando il messaggio o parte di esso
Old 21-12-2008, 18:44   #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
Sono grandi questi file ?

Se sono piccoli ti conviene trasferirli tutti in memoria Usi una stessa funzione per leggerli, quindi il codice è molto più snello.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 21-12-2008, 22:14   #3
stefano_ba
Senior Member
 
L'Avatar di stefano_ba
 
Iscritto dal: Mar 2000
Città: Bari-Brindisi-Lecce e prov
Messaggi: 424
fopen ritorna un puntatore a FILE, quindi dovresti definire gli elementi del vettore come puntatori a FILE.

Prova con FILE *dati[27][4];

Ti consiglierei anche di creare una tua funzione ApriFile(char*nomedelfile, char*modalita) da utilizzare cosi'

dati[0][0] = ApriFile ( "/Users/Tom/Tesi/DIVISI/AHP-15m.tom","r");

e che si occupa al suo interno della chiamata ad fopen per aprire il file e gestisce l'eventuale errore se il file stesso e' non esistente.
__________________
VoIp Gratis - Adsl senza canone telecom
Ho trattato con: adarkar,Bobosassa, matrix866,M@t,k|o, percky,s5otto, Rospaccio, CluRaCaN, Igor,Zizziry, bokkakesballa, Pex,freewilly, Umbyboy,DAVO, nathbigga, fabiuxx ed altri. Diffidate di quinnuxxa
stefano_ba è offline   Rispondi citando il messaggio o parte di esso
Old 21-12-2008, 22:35   #4
Tomsl
Member
 
Iscritto dal: Mar 2007
Messaggi: 53
grazie mille infatti era nel mio progetto mi dimenticavo della *. perchè pensavo che dichiarando l'array non avessi bisogno del puntatore
i file sono molto grandi quindi opterò per il consiglio di stefano_ba grazie cmq cionci!!
Tomsl è offline   Rispondi citando il messaggio o parte di esso
Old 21-12-2008, 22:44   #5
Tomsl
Member
 
Iscritto dal: Mar 2007
Messaggi: 53
Quote:
Originariamente inviato da stefano_ba Guarda i messaggi
fopen ritorna un puntatore a FILE, quindi dovresti definire gli elementi del vettore come puntatori a FILE.

Prova con FILE *dati[27][4];

Ti consiglierei anche di creare una tua funzione ApriFile(char*nomedelfile, char*modalita) da utilizzare cosi'

dati[0][0] = ApriFile ( "/Users/Tom/Tesi/DIVISI/AHP-15m.tom","r");

e che si occupa al suo interno della chiamata ad fopen per aprire il file e gestisce l'eventuale errore se il file stesso e' non esistente.
una cosa così quindi andrebbe bene?


FILE *ApriFile(char *nomedelfile, char *modalita)
{
FILE *in;

in = fopen(nomedelfile,modalita);
if(in==NULL) printf("errore apertura file %s",&nomedelfile);

return in;
}

Ultima modifica di Tomsl : 21-12-2008 alle 22:55.
Tomsl è offline   Rispondi citando il messaggio o parte di esso
Old 21-12-2008, 23:11   #6
stefano_ba
Senior Member
 
L'Avatar di stefano_ba
 
Iscritto dal: Mar 2000
Città: Bari-Brindisi-Lecce e prov
Messaggi: 424
Aggiungerei un interruzione del programma al punto dell'errore, altrimenti il programma proseguirebbe l'esecuzione nonostante l'errore.

Codice:
FILE *ApriFile(char *nomedelfile, char *modalita)
{
	FILE *in;
	
	in = fopen(nomedelfile,modalita);
	if(in==NULL){
		printf("errore apertura file %s",&nomedelfile);
		exit(-1);/* Termino l'esecuzione */
	}

	return in;
}
2 riferimenti http://digilander.libero.it/uzappi/C...ioni/exit.html e http://home.dei.polimi.it/pozzi/Info...veProcessi.pdf
__________________
VoIp Gratis - Adsl senza canone telecom
Ho trattato con: adarkar,Bobosassa, matrix866,M@t,k|o, percky,s5otto, Rospaccio, CluRaCaN, Igor,Zizziry, bokkakesballa, Pex,freewilly, Umbyboy,DAVO, nathbigga, fabiuxx ed altri. Diffidate di quinnuxxa

Ultima modifica di stefano_ba : 21-12-2008 alle 23:14.
stefano_ba è offline   Rispondi citando il messaggio o parte di esso
Old 14-01-2009, 18:48   #7
Tomsl
Member
 
Iscritto dal: Mar 2007
Messaggi: 53
grazie!

Ultima modifica di Tomsl : 14-01-2009 alle 18:55.
Tomsl è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre iPhone 18 Pro: la recensione del miglior iPhone ...
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34 Panasonic, 30 anni di Toughbook: la "Bibbia...
realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione realme C100x, lo smartphone economico con la bat...
Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
SpaceX mostra nuove immagini del lancio ...
Cina: CAS Space e Guangzhou Laboratory e...
Nikon Comedy Wildlife Awards 2026: le fo...
Samsung Galaxy A57 e A37 costano di più ...
Windows 11 26H2 taglia il consumo di RAM...
KINGPIN è tornato! Il re dell'ove...
CPU usata, ban ereditato: il caso del Ry...
Spunta un engineering sample di Ryzen 9 ...
iPhone 18 Pro, alcuni utenti segnalano s...
Android Auto: Gemini ascolta la domanda ...
OpenAI avvisa oltre 100 organizzazioni p...
Dall'AI alla SI: il rebranding di Trump ...
0patch offrirà supporto esteso pe...
Sudo sembra un iPod, ma nasconde una car...
Meta, OpenAI e Google rifanno OpenClaw: ...
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: 00:41.


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