Torna indietro   Hardware Upgrade Forum > Software > Programmazione

ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN è il primo monitor gaming con pannello QD-OLED Gen 5 a layout RGB Stripe Pixel e 360 Hz su 34 pollici: lo abbiamo misurato con sonde colorimetriche e NVIDIA LDAT. Ecco tutti i dati
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Nothing Phone (4a) Pro cambia pelle: l'alluminio unibody sostituisce la trasparenza integrale, portando una solidità inedita. Sotto il cofano troviamo uno Snapdragon 7 Gen 4 che spinge forte, mentre il display è quasi da top dig amma. Con un teleobiettivo 3.5x e la Glyph Matrix evoluta, è la prova di maturità di Carl Pei. C'è qualche compromesso, ma a 499EUR la sostanza hardware e la sua unicità lo rendono un buon "flagship killer" in salsa 2026
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
Con Midnight, Blizzard tenta il colpaccio: il player housing sbarca finalmente su Azeroth insieme a una Quel'Thalas ricostruita da zero. Tra il dramma della famiglia Ventolesto e il nuovo Prey System, ecco com'è la nuova espansione di World of Warcraft
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-01-2008, 17:58   #1
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
[C]leggere file in modo binario

ho due programmi client server, e voglio inviare un file (qualsiasi, non solo di testo) al server. credo che la via giusta sia di aprire e leggere il file in modo binario:
quindi lo apro:
FILE *F;

char invio_dati[100];

F=fopen("file.gif", "rb");

poi lo leggo:

while(fread (invio_dati, 1, 100, F)!=NULL)
{ ..}

pero credo che qui sbaglio, anche perché quando arriva alla fine del file non esce dal loop.

e nel server la stessa cosa,ma con:

fwrite(ricezione_dati,1,100, F);

Che errori faccio? grazie
$te è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2008, 20:01   #2
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
non è detto che il valore di ritorno di fread sia 0 quando viene incontrata la fine del file: potrebbe essere il numero di items letti inferiore al previsto. inoltre fread non distingue tra EOF ed errore di I/O, quindi meglio usare feof.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2008, 21:05   #3
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
ora pero non riesco a fermare la ricezione!

perché faccio cosi:

client:

while (!feof(F))
{
fread (invio_dati, 1, 100, F);

//Invio il messaggio
send(client,invio_dati,100,0);
printf("\n %s",invio_dati);

}

fclose(F);

send(client,"chiuditi",100,0);

server:

while(1)
{
//Funzione recv per ricevere i dati
recv(server,ricezione_dati,100,0);

if( strcmp(ricezione_dati, "chiuditi")==0) break;

fwrite(ricezione_dati,1,100, F);

//Outputiamo i dati ricevuti
printf("\nHo ricevuto >>> %s \n",ricezione_dati);

//Il ciclo continua finchè non viene digitato "Chiuditi"
}
$te è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2008, 08:35   #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
Questo è errato:

send(client,"chiuditi",100,0);

Dove li va a prendere i 100 byte da quella stringa ???
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2008, 08:56   #5
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
quanti byte sono quindi? 1 per lettera?
$te è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2008, 09:05   #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
Sì, +1 byte per il finestringa.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2008, 09:33   #7
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
ok, ora funziona,grazie!

ora vorrei provare ad avviare il server su un computer a casa, e il programma client da un amico: basta mettere l'ip corretto per far funzionare il tutto?
$te è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2008, 09:37   #8
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 $te Guarda i messaggi
ora vorrei provare ad avviare il server su un computer a casa, e il programma client da un amico: basta mettere l'ip corretto per far funzionare il tutto?
Se chi fa il server ha la porta aperta sul router (se ce l'ha) e la porta è aperta sul firewall di Windows allora sì.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2008, 09:37   #9
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da $te Guarda i messaggi
ora vorrei provare ad avviare il server su un computer a casa, e il programma client da un amico: basta mettere l'ip corretto per far funzionare il tutto?
solo se l'amico non è dietro NAT/firewall

edit - mi correggo, solo se tu non sei dietro NAT/firewall. post contemporaneo a quello di cionci
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2008, 18:02   #10
$te
Senior Member
 
L'Avatar di $te
 
Iscritto dal: Aug 2006
Messaggi: 1262
un altra curiosità: dovrebbe essere possibile connettersi a dei server (ad es quelli da cui mi connetto con emule?)?
$te è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz ASUS ROG Swift OLED PG34WCDN recensione: il prim...
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico Recensione Nothing Phone (4a) Pro: finalmente in...
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Secondo Elon Musk FSD è più...
Anche Cloudflare fissa il 2029 per la si...
Hacker sfruttano da mesi un bug segreto ...
ASUSTOR Lockerstor 24R Pro Gen2: 24 bay ...
Rigetti supera la soglia dei 100 qubit: ...
eFootball raggiunge il miliardo di downl...
Come provare OpenClaw facilmente grazie ...
Microsoft conferma: questo glitch dell'o...
Toyota bZ7: una berlina da oltre 5 metri...
Artemis II, le prime foto del lato nasco...
Sempre più pubblicità su YouTube: arriva...
Polestar fa +80% in Italia e tocca quota...
Il tuo Mac smette di connettersi a Inter...
La nuova alleanza Intel-Google ridefinis...
Energia troppo cara, regole da rivedere:...
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: 19:43.


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