FORUM DARKERS

Tecnologia & Informática => Programação => C/C#/C++ => Topic started by: branco on 24 de June , 2006, 10:21:23 PM

Title: Source Chat, Cliente/servidor
Post by: branco on 24 de June , 2006, 10:21:23 PM
Source feito por um amigo e estou compartilhando com vcs, oque ele faz é colocar um servido em escuta ai o cliente se conecta e podem converça, otimo para estudos, t+

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
char buff[1024];
char nick[256];
char sss[1024];
char *pul="\n";
main()
{
      printf("\tPrograma teste -> CHAT em C");
      printf("\nCarregando e criando sockets...");
      WSADATA data;     
      WSAStartup(MAKEWORD(2,2),&data);
      printf("\nDll winsock com versao 2,2 carregada.");
      SOCKET sock;
      sock=socket(AF_INET,SOCK_STREAM,0);
      printf("\nSocket criado e inicializado.");
      struct sockaddr_in local, remote;
      local.sin_family=AF_INET;
      local.sin_port=htons(21);
      local.sin_addr.s_addr=INADDR_ANY;
      bind(sock,(struct sockaddr*)&local,sizeof(local));
      listen(sock,1);
      printf("\nSocket configurado e em escuta");
      SOCKET at;
      int Siiz=sizeof(struct sockaddr);
      at=accept(sock,(struct sockaddr*)&remote,&Siiz);
      if(at!=INVALID_SOCKET)
      {
                            printf("\nConexão realizada com sucesso.");
      }
      printf("\nConexao vinda de: %s porta: %d",inet_ntoa(remote.sin_addr),ntohs(remote.sin_port));
      printf("\n\nDigite seu nick: ");
      gets(nick);
      while(true)
      {
                 printf(pul);
                 printf("%s envia: ",nick);
                 gets(buff);
                 send(at,buff,sizeof(buff),0);
                 send(at,pul,sizeof(pul),0);
                 recv(at,sss,sizeof(sss),0);
                 printf("\n%s",sss);
      }
      closesocket(at);
      closesocket(sock);
      getch();
}
Title: Re: Source Chat, Cliente/servidor
Post by: insanity on 24 de June , 2006, 11:33:40 PM
Nice source


ate mais