Cliente:
Servidor:
los datos se mandan,pero no se ven los caracteres correcamente
Código (cpp) [Seleccionar]
#include "windows.h"
#include "iostream"
#pragma comment(lib,"ws2_32.lib")
#define PORT 9999
WSADATA wsa;
SOCKET Client;
int Conexion;
sockaddr_in Remote_Server;
int Error()
{
std::cout << "Error " << GetLastError() << std::endl;
getchar();
return 0;
}
int main(void)
{
if(WSAStartup(MAKEWORD(2,0),&wsa) != 0)
{
Error();
}
Remote_Server.sin_family = AF_INET;
Remote_Server.sin_port = htons(PORT);
Remote_Server.sin_addr = *((in_addr *)gethostbyname("localhost")->h_addr);
Client = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
Conexion = connect(Client,(sockaddr *)&Remote_Server,sizeof(sockaddr));
if(Conexion == INVALID_SOCKET)
{
Error();
}
char *Buffer = (char*)malloc(5);
send(Client,Buffer,strlen(Buffer),0);
free(Buffer);
return 0;
}
Servidor:
Código (cpp) [Seleccionar]
#include "windows.h"
#include "iostream"
#pragma comment(lib,"ws2_32.lib")
#define PORT 9999
WSADATA wsa;
SOCKET Client;
int Conexion;
sockaddr_in Remote_Server;
int Error()
{
std::cout << "Error " << GetLastError() << std::endl;
getchar();
return 0;
}
int main(void)
{
if(WSAStartup(MAKEWORD(2,0),&wsa) != 0)
{
Error();
}
Remote_Server.sin_family = AF_INET;
Remote_Server.sin_port = htons(PORT);
Remote_Server.sin_addr = *((in_addr *)gethostbyname("localhost")->h_addr);
Client = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
Conexion = bind(Client,(SOCKADDR*)&Remote_Server,sizeof(Remote_Server));
listen(Client,10);
accept(Client,NULL,NULL);
char *Buffer = (char*)malloc(5);
while(true)
{
recv(Client,Buffer,strlen(Buffer),0);
if(strcmp(Buffer,"Hola"))
{
break;
}
}
std::cout << Buffer <<std::endl;
getchar();
free(Buffer);
return 0;
}
los datos se mandan,pero no se ven los caracteres correcamente