Enviado em 08/03/2018 - 00:42h
Boa noite#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <errno.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
#define PORTA 1234
#define LEN 4096
struct sockaddr_in remoto; //estrutura para o cliente
int main()
{
int socket_s; //descritor socket servidor
int socket_c; //descritor socket cliente
int len = sizeof(remoto);
int slen;
char buffer[5000];
printf("\nSocket cliente !!!\n");
//criando socket servidor
socket_s = socket(AF_INET, SOCK_STREAM, 0);
if(socket_s == -1)
{
perror("\nErro ao criar socket !\n");
exit(1);
}
else
printf("\nSocket criado !\n");
//definindo as variaveis da struct
remoto.sin_family = AF_INET; //define a familia da internet da strruct
remoto.sin_port = htons(PORTA); //define a porta a ser utilizada
remoto.sin_addr.s_addr = inet_addr("192.168.1.3"); //converte para endereço de ip
memset(remoto.sin_zero, 0x0, 8);
//conecta ao socket servidor
if((socket_s = conncet(socket_s, (struct sockaddr*)&remoto, len)) == -1)
{
perror("\nErro ao fazer a conexao !\n");
exit(1);
}
strcpy(buffer, "Mensagem para servidor\n\0");
//envia uma mensagem pra o socket servidor e retorna o numero de bytes da mensagem
if(send(socket_s, buffer, strlen(buffer), 0))
{
while(1)
{
//recebe mensagem de outro socket
if((slen = recv(socket_s, buffer, LEN, 0)) > 0)
{
buffer[slen] = '\0';
printf("\nMensagem recebida: %s\n", buffer);
}
}
memset(buffer, 0x0, LEN);
fgets(buffer, LEN, stdin);
send(socket_s, buffer, strlen(buffer), 0);
}
close(socket_s);
printf("\nCliente encerrado\n");
return 0;
}
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
como instalar o docker desktop e o docker no debian 12 arm64 (11)