3  Familiarize-se com a assinatura da função para " recv (). " os itens entre parênteses são chamados de parâmetros , e eles são tipicamente utilizado como um meio de introdução de dados numa função . O primeiro parâmetro é "int s ", que refere-se ao identificador inteiro para o socket que deseja receber os dados. O segundo parâmetro é um ponteiro para o tampão , que armazena todos os dados recebidos , e o terceiro parâmetro é o comprimento do tampão de bytes . O quarto e último parâmetro é o parâmetro " bandeiras " , que pode alterar o comportamento da função. O tipo de retorno para esta função é " ssize_t ", e retorna o número de bytes recebidos, ou "-1" se ocorrer um erro . 
 
 Ssize_t recv ( int s, void * buf , size_t len, int flags ) ; 
 4 
 criar uma matriz de "char " tipos de dados, que são garantidos para ser pelo menos um byte. A duração exata depende das especificidades do seu sistema, mas , em geral, um " char" é um byte , ou oito bits , por muito tempo. Escreva o seguinte para declarar uma matriz de 256 " char" tipos de dados : 
 
 de char buffer [ 256]; 
 5 
 Crie uma variável que armazena o número de bytes recebidos . Este é o valor retornado pela função " recv ()," e é útil para determinar quando o buffer estiver quase cheio, ou se ocorreu um erro . Escreva o seguinte para criar esta variável : 
 
 int recebido = 0; 
 6 
 Conecte-se ao local de rede usando um soquete. Um soquete é apenas um inteiro, e pode ser declarada assim: 
 
 int tomada ; 
 7 
 Chamar a função " recv ()" usando as variáveis declaradas até agora . Para usar " recv ()" com seu comportamento padrão , defina o sinalizador para "0 ". 
 
 Recebido = recv ( socket, buffer, sizeof ( buffer) , 0); 
 8 
 Compilar e executar o programa. O programa cria uma área na memória e prepara -lo para receber dados de um socket. Em seguida, ele chama a função " recv ( )", que recebe os dados do socket.