![]() |
Pages (2): [1] 2 » Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Reti di calcolatori (http://www.dsy.it/forum/forumdisplay.php?forumid=68)
-- [CURIOSITA'] Programmazione in C (http://www.dsy.it/forum/showthread.php?threadid=16533)
[ programmazione in c] domanda/curiosità
ora che sono riuscito a fare i primi programmini cazzutissimi in tcp e udp in java volevo cercare di guardare qualcosina di c, giusto per capirci qualcosa.
nelle slides di cassiano ho visto che viene trattata la costruzione di una classe client e server in c.
la mia domanda è la seguente: a differenza di java, che ha una struttura completamente diversa tra TCP e UDP, per programmare con questi due protocolli in c basta sostituire il terzo parametro quando si crea la socket oppure c'è altro da fare?
Non ho sottomano le slide, potresti postare il pezzo di codice cui ti riferisci?
__________________
?
questo:
sd = (socket(AF_INET, SOCK_STREAM,0));
da quanto ho capito, gli ultimi due parametri indicano il tipo di protocollo da usare per la comunicazione; io intendevo dire:
per farla in tcp : (socket(AF_INET, SOCK_STREAM,6));
mentre per farla in udp: (socket(AF_INET, SOCK_DGRAM,17));
ah ecco.
Dunque il terzo parametro lascialo pure su 0 (se non sbaglio determina una scelta automatica).
La differenza tra TCP e UDP la fai con SOCK_STREAM e SOCK_DGRAM.
__________________
?
Re: [ programmazione in c] domanda/curiosità
Originally posted by GinoPilotino
la mia domanda è la seguente: a differenza di java, che ha una struttura completamente diversa tra TCP e UDP, per programmare con questi due protocolli in c basta sostituire il terzo parametro quando si crea la socket oppure c'è altro da fare?
__________________
E lo sceriffo americano non lo sa / ma quando parla ride tutta la città / vile fellone vieni a singolar tenzone / unza unza umpappà troppe truppe mariscià.
Non ci voleva l'eruzione della lava / e due piccioni si contendono la fava / sposa bagnata, bambina svergognata / la questione è delicata / come bolle la patata.
Basta! E' finita la festa
[L'ovile delle vanità, Folkabbestia]
il problema è che sostituendo semplicemente i parametri della socket non funziona.
il server crea la socket e mi entra in loop infinito continuando a dire che sbaglia ad accettare il client.
qualcuno c'è riusciuto a farlo funzionare in udp?
Originally posted by GinoPilotino
il problema è che sostituendo semplicemente i parametri della socket non funziona.
il server crea la socket e mi entra in loop infinito continuando a dire che sbaglia ad accettare il client.
qualcuno c'è riusciuto a farlo funzionare in udp?
__________________
E lo sceriffo americano non lo sa / ma quando parla ride tutta la città / vile fellone vieni a singolar tenzone / unza unza umpappà troppe truppe mariscià.
Non ci voleva l'eruzione della lava / e due piccioni si contendono la fava / sposa bagnata, bambina svergognata / la questione è delicata / come bolle la patata.
Basta! E' finita la festa
[L'ovile delle vanità, Folkabbestia]
eh si futur, il problema dev'essere proprio quello che dici tu.
ora però voglio prima cercare di capire alcune cose basilari del codice.
chi è in grado di tradurre cosa fa questa riga di codice???
client.sin_addr.s_addr = ((struct in_addr*)(hp->h_addr))->s_addr;
e da dove escono fuori h_addr, e s_addr???
Così a occhio dovrebbero essere variabili definite nel codice...
Comunque per usare UDP devi usare sendto() e recvfrom()
__________________
?
qualcuno è in grado di scrivere un codice TCP e UDP in c commentandolo come si deve? 
Originally posted by GinoPilotino
qualcuno è in grado di scrivere un codice TCP e UDP in c commentandolo come si deve?![]()
__________________
E lo sceriffo americano non lo sa / ma quando parla ride tutta la città / vile fellone vieni a singolar tenzone / unza unza umpappà troppe truppe mariscià.
Non ci voleva l'eruzione della lava / e due piccioni si contendono la fava / sposa bagnata, bambina svergognata / la questione è delicata / come bolle la patata.
Basta! E' finita la festa
[L'ovile delle vanità, Folkabbestia]
Originally posted by futurbaggio
Tu sei stato in grado di scriverlo, io sono in grado di commentartelo
Roberto
PS Io ho fatto qualcosina in TCP, ma qua il problema è UDP: metti il codice!
Originally posted by GinoPilotino
la mia non è una critica al corso; in java, linguaggio che m'hanno insegnato ad usare, ho imparato a fare qualcosina di programmazione di reti ma uno che non ha mai visto il c mi dici che cosa potrà mai capire da una riga di codice come quella postata da me in precedenza?
__________________
E lo sceriffo americano non lo sa / ma quando parla ride tutta la città / vile fellone vieni a singolar tenzone / unza unza umpappà troppe truppe mariscià.
Non ci voleva l'eruzione della lava / e due piccioni si contendono la fava / sposa bagnata, bambina svergognata / la questione è delicata / come bolle la patata.
Basta! E' finita la festa
[L'ovile delle vanità, Folkabbestia]
dopo diritto posto tutto il codice. 
Salve gente,come da consiglio di yeah,visto che sono ancora al momento uno Winzozziano (
),ho scaricato MinGW...
Volevo esser sicuro di averlo installato bene,perchè scrivendo un codice preso pari pari da una guida al C,l'applicazione mi si impalla...Ecco il codicillo simplizissimus:
code:
#include <stdio.h> char *string = "Rosso\n"; int main(int argc, char *argv[]) { printf(string); *(string+3) = 'p'; printf(string); }
__________________
GET DROPBOX
# il grado di lentezza è direttamente proporzionale all'intensità della memoria;il grado di velocità è direttamente proporzionale all'intensità dell'oblio (Kundera) #
BLOG: Byte Strike
ChRiS 
| All times are GMT. The time now is 02:56. | Pages (2): [1] 2 » Show all 24 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.