[ Foro de C ]

AYUDAAA!!!!COMO HACER UN SOCKET CLIENTE/SERVIDOR EN C EN IDE VISUALSTUDIO 2019

05-Jun-2020 05:09
Invitado (Anonymo)
2 Respuestas

AYUDA gente quiero hacer un socket pero nose como hacerlo


13-Jun-2020 12:00
Invitado (carlos)

hola

si puedes hacer una pregunta mas concreta, el no se hacerlo es muy general, que sabes y que no sabes, que parte tienes hecha y que dudas tienes


27-Jul-2020 05:30
marcelo Correa (+2)

Hola. Aqui te dejo un ejemplo

// implementacion de sockets para programa servidor

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>

int main()
{
struct sockaddr_in server_address;
int server_socket, client_socket;
char server_message[32] = "Has conectado con el servidor!";

// crear el socket servidor
server_socket = socket(AF_INET, SOCK_STREAM, 0);

//definir la dirección del server
server_address.sin_family = AF_INET;
server_address.sin_port = htons(1863);
server_address.sin_addr.s_addr = INADDR_ANY;

// enlazar el socket con nuestra ip y puerto determinado
bind(server_socket, (struct sockaddr *) &server_address, sizeof(server_address));
listen(server_socket, 2);
client_socket = accept(server_socket, NULL, NULL);
send(client_socket, server_message, sizeof(server_message), 0);
close(server_socket);
return 0;
}


// implementacion de sockets para programa cliente

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>

int main()
{
struct sockaddr_in server_address;
int client_socket, conn_status;
char server_message[256];

// especifica una direccion para el socket
server_address.sin_family = AF_INET;
server_address.sin_port = htons(1863);
server_address.sin_addr.s_addr = INADDR_ANY;

client_socket = socket(AF_INET, SOCK_STREAM, 0);
conn_status = connect(client_socket, (struct sockaddr *) &server_address, sizeof(server_address));

if(conn_status < 0){
printf("Error al establecer la conexión\n");
return 1;
close(client_socket);
}

// recibe datos del server
recv(client_socket, &server_message, sizeof(server_message), 0);
printf("El servidor responde: %s\n", server_message);
close(client_socket);
return 0;
}






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)