Zócalos, son una forma de transferir datos con los estándares de un descriptor de fichero Unix . Un descriptor de fichero Unix es un número entero que está asociado a un archivo abierto , y permite que el sistema operativo para acceder a ella . Bajo el sistema operativo Unix , todo es un archivo, incluso las conexiones de red . Enchufes están especializadas en la comunicación por Internet . Cuando usted está utilizando sockets en su programa, debe configurar un número de bytes a recibir los datos. Esto se llama un tampón . El C + + función " recv () " le permite configurar un búfer para recibir datos de un socket. Cosas que necesitará
+ entorno de desarrollo integrado ( IDE ) , como Eclipse CDT
C + + Compiler , tal GCC
Mostrar Más instrucciones
1
carga C + el C + + IDE haciendo clic en el icono del programa . Cuando se abre, seleccione " Archivo /Nuevo /Proyecto " y selecciona "C + + proyecto" para crear un nuevo proyecto de C + + . Un archivo de código fuente en blanco en la parte de edición de texto de la IDE
2
Añadir las dos directivas " incluir " siguiente al principio del archivo de código fuente: . # Include < sys /tipos . h> # include
3 Familiarícese con la firma de la función de " recv (). " los elementos entre paréntesis se denominan parámetros , y por lo general son utilizado como una forma de introducir datos en una función . El primer parámetro es " s int ", que hace referencia al identificador entero para el socket que desea recibir datos. El segundo parámetro es un puntero a la memoria intermedia que almacena los datos recibidos , y el tercer parámetro es la longitud de la memoria intermedia en bytes . El cuarto y último parámetro es el parámetro de " banderas " , que pueden alterar el comportamiento de la función . El tipo de retorno de esta función es " ssize_t ", y devuelve el número de bytes recibidos , o " 1" si se produce un error.
Recv ssize_t (int s , void * buf, size_t len , int banderas ) ,
4
Crear una matriz de tipos " char" de datos, que están garantizados para ser de al menos un byte de longitud . La duración exacta depende de las características específicas de su sistema, pero en general, un "char " es un byte , u ocho bits de longitud. Escribe lo siguiente para declarar una matriz de 256 tipos de datos " char" :
char buffer [ 256 ] ;
5
Crear una variable que almacena el número de bytes recibidos . Este es el valor devuelto por la función " recv ()," y es útil para determinar cuando el buffer está casi llena o si se ha producido un error. Escribe lo siguiente para crear esta variable :
int recibido = 0 ;
6
Conéctate a la ubicación de red utilizando una toma de corriente. Un socket es un entero, y puede ser declarado así:
socket int
;
7
Invocar el " recv ()" función utilizando las variables declaradas hasta ahora. Para utilizar " recv () " con su comportamiento predeterminado, establece el indicador de
recibió = recv (socket, buffer, sizeof ( buffer) , 0 ) " 0 . " ;
8 < p> Compilar y ejecutar el programa. El programa crea un área en la memoria y lo prepara para recibir datos desde un socket . A continuación, se llama a la función " recv ()" , que recibe los datos de la toma .