< br >
3 Hent værten oplysninger med " getaddrinfo "-funktionen ved at tilføje følgende kode i din funktion : Hej
struct addrinfo hints , * res ;
int SFD ;
char buffer [ 512 ]
int nrecv ,
memset (& hints , 0 , sizeof hints ),
hints.ai_socktype = SOCK_STREAM ;
hints.ai_family = AF_UNSPEC ,
getaddrinfo ( " www.server.com ", " 3500 " , og hints , og RES)
Udskift host -adresse " www.server.com " og havnen i " 3500 " med oplysningerne for den server , du opretter forbindelse til. Den " SOCK_STREAM " værdi angiver stikket vil bruge TCP, hvilket er en pålidelig tovejs -forbindelse
4
Opret en sokkel med værten oplysninger ved at tilføje følgende kode : .
SFD = socket (res -> ai_family , res -> ai_socktype , res -> ai_protocol )
5
Tilslut stikket med " connect "-funktionen , ved hjælp af file descriptor fra " socket " funktionen ved at tilføje følgende kode : Hej
connect ( SFD , res -> ai_addr , res -> ai_addrlen )
6
Åben en fil til at skrive til med de " fopen "-funktionen ved at tilføje følgende kode : Hej
FILE * fp ;
fp = fopen ( " file.rar ", " wb ");
7 < p> Modtage oplysninger i bufferen med "Modtag "-funktionen ved at tilføje følgende kode : Hej
int num_written = 0;
while ( ( nrecv = recv ( SFD , buffer, sizeof buffer , 0) ) > 0) {
char * pbuf = buffer ,
while ( nrecv > 0) {
num_written = fwrite ( pbuf , sizeof (char ) , nrecv , fp ),
pbuf + = num_written ,
nrecv - = num_written ,
}
}
loop vil fortsætte med at modtage oplysninger, indtil en fejl , som returnerer en negativ værdi , eller indtil den modtager et "TCP FIN "-meddelelse , som har en værdi på 0. .
8
Gem C -filen , kompilere og eksekvere programmet for at modtage oplysninger fra stikkontakten forbindelsen.