View Full Version : Semplice questi di C
OverClocking
26-09-2010, 23:00
Ciao raga!
Sono un programmatore di C#, e vorrei ri-prendere in mano un pò di "semplice" c...
Volevo sapere se il c, una volta compilato il codice, genera un solo eseguibile(un solo file .exe) oppure un casino di file come c#...Grazie!
p.s. se possibile anche, potreste indicarmi se il C gestisce il TCP?
Teo@Unix
26-09-2010, 23:13
A mio parere il C è molto utile per lavorare a basso livello.
Crea un solo eseguibile, me ci puoi fare anche una libreria lo decidi tu...:)
TCP lo gestisce benissimo, naturalmente dovrai considerare molti più dettagli rispetto a C#.
Il kernel linux è scritto in C, quindi ci puoi fare tutto diciamo....:D
xplorer87
26-09-2010, 23:16
Assumo che con "casino di file che genera C#" tu ti stia riferendo ai file di gestione di progetti e soluzioni di Visual Studio o altri environment equivalenti: non ho esperienza di programmazione C su Windows (visto che parli di file .exe), ma in ambiente Unix una volta compilato il sorgente con gcc (gcc file_sorgente.c -o file_eseguibile) viene generato solo il file eseguibile. Tutto il resto, così come anche in ambiente Windows, sono librerie che utilizza il programma, che è fortemente sconsigliato integrare nel codice sorgente, e file prodotti dall'editor.
Per quanto riguarda la seconda domanda la risposta è affermativa: il C ha a disposizione delle librerie (sys/socket.h ad esempio) per la gestione delle connessioni UDP e TCP.
Se non ti dispiace, posso chiederti come mai sei interessato alla programmazione C in ambiente Windows ed al "numero di file generati" quando si compila un sorgente in un certo linguaggio? :)
Se non erro, le implementazioni del protocollo TCP sono scritte in C, quindi penso proprio che lo gestisca .. :D
pabloski
27-09-2010, 10:14
Se non erro, le implementazioni del protocollo TCP sono scritte in C, quindi penso proprio che lo gestisca .. :D
Attenzione, lui si riferisce al fatto che C# ( avendo dietro .net ) ti offre un mucchio di classi per la gestione delle più disparate esigenze.
In questo caso il C non offre nativamente un supporto al tcp/ip, deve usare l'api del sistema operativo o librerie esterne.
OverClocking
27-09-2010, 13:48
Grazie mille per le risposte. :D :D :D
Allora per xplorer...mi serviva un solo eseguibile per pura praticità, per realizzare qualche piccola applicazioncina a basso livello veloce e portabile, e con possiblità di gestire le connessioni TCP.
GCC su windows non cè, cè DJGPP ( che non riesco a far funzionare xD ) :D
Chiedevo, altrimenti, se conoscete un linguaggio che può essermi utile per realizzare ciò che ho descritto nella 2 , oppure se esiste un buon compilatore di C :) :) :)
@Teo...che compiler usi?
pabloski
27-09-2010, 13:58
DJGPP è complicato da settare, chi sviluppa con gcc su windows lo fa installando mingw.
Perchè non installi visual c++ e usi quello?
Al limite se vuoi fare qualche applicazione cross-platform installi qt sdk e qt creator, così hai un framework che supporta nativamente socket e tutto il resto.
E' di fatto un ambiente completo come .net ma con tutti i vantaggi degli eseguibili senza frizzi e lazzi della microsoft.
Teo@Unix
27-09-2010, 16:52
@Teo...che compiler usi?
Prova Netbeans per windows è un ambiente integrato. Ultimamente lo sto utilizzando largamente su linux, ma so di una versione per windows che non ho ancora provato. Lo trovo al pari di visual studio, anche per un ottimo sistema di autocompletamento del codice.
Una volta installato questo contiene il supporto solo per java, poi se vai nei plugin scarica ed installa quello per C/C++.
La pagina che riguarda l'estensione C/C++:
http://netbeans.org/features/cpp/index.html
naturalmente ne esistono molti altri, per C++ C# credo possa convenire anche la versione express di Visual studio 2010...
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.