3 Familiarisez-vous avec la signature de fonction pour " recv ( ) . " les éléments entre parenthèses sont appelés paramètres , et ils sont généralement utilisé comme un moyen d' entrer des données dans une fonction . Le premier paramètre est " int s », qui renvoie à l' identificateur entier pour la prise que vous voulez recevoir les données. Le deuxième paramètre est un pointeur vers la mémoire tampon qui stocke toutes les données reçues , et le troisième paramètre est la longueur de la mémoire tampon en octets . Le quatrième et dernier paramètre est le paramètre " drapeaux " , ce qui peut modifier le comportement de la fonction . Le type de retour de cette fonction est " ssize_t », et il renvoie le nombre d'octets reçus , ou "-1" si une erreur survient .
Recv ssize_t (int s , void * buf, size_t len , int flags ) ;
4
créer un tableau de types "char" de données, qui sont garantis au moins un octet . La durée exacte dépend des spécificités de votre système , mais en général, un "char" est un octet, ou huit bits , long. Ecrivez ce qui suit pour déclarer un tableau de 256 types de données "char" :
char buffer
[ 256];
5
créer une variable qui stocke le nombre d'octets reçus . Il s'agit de la valeur retournée par la fonction " recv ()," et il est utile pour déterminer si le tampon est presque plein, ou si une erreur s'est produite. Ecrivez ce qui suit pour créer cette variable :
int reçu = 0;
6
connecter à l'emplacement réseau à l'aide d'une douille. Un socket est simplement un entier, et peut être déclaré comme ceci:
int socket ;
7
Invoke le " recv ( ) " fonction utilisant les variables déclarées jusqu'ici. Pour utiliser " recv ( ) " avec son comportement par défaut , définir l'indicateur de
reçu = recv ( socket, buffer , sizeof (buffer ) , 0) "0". ;
8 < p> compiler et exécuter le programme. Le programme met en place une zone de la mémoire et le prépare pour recevoir des données depuis une socket . Il appelle ensuite la fonction " recv ()» , qui reçoit les données de la prise .