C/Visual C - Socket

 
Vista:

Socket

Publicado por Ragnarock (2 intervenciones) el 21/11/2011 13:00:52
Estoy desarrollando una aplicacion,mediante sockets y ya tengo creado el servidor,ahora me hace falta crear el cliente que envie los datos a este servidor.
Queria saber si me pueden ayudar con este codigo,ya que tengo que enviar datos al socker especifico que yo creo (direccion
ip=localhost , puerto= 1345) y en C++ no se como hacerlo.
Ayudarme por favor
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Socket

Publicado por Virgencito (1 intervención) el 24/11/2011 14:08:39
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>

#define PUERTO 1345

int main (void){
int s, res, sin_size, i, i2;
struct sockaddr_in dir_servidor;
char mensaje [255];

s = socket(AF_INET, SOCK_STREAM, 0);
if (s!=-1)
{
dir_servidor.sin_family = AF_INET;
dir_servidor.sin_port = htons(PUERTO);
dir_servidor.sin_addr.s_addr = inet_addr("127.0.0.1"); /*aqui va tu IP*/
memset(&(dir_servidor.sin_zero), '\0', 8); // Poner a cero el resto de la estructura
res = connect(s, (struct sockaddr *)&dir_servidor, sizeof(struct sockaddr));
if (res!=-1)
{
strcpy(mensaje, "Hola servidor, soy un cliente\n");
if(send(s, mensaje, strlen(mensaje)+1, 0)==-1)
{
perror("Error al enviar el mensaje :(\n");
}
else
{
printf("ENVIADO: %s\n", mensaje);
}
for (i=0; i<9; i++)
{
send(s, &i, sizeof(int), 0);
recv(s, &i2, sizeof(int), 0);
printf("%d² = %d\n", i, i2);
}
}
else
{
close(s);
perror("Error en el connect\n");
return(-1);
}
}
else
{
printf ("Error al abrir socket\n");
return(-1);
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar