[resolu tout seul ^^] Probleme avec socket & printf

Probleme avec socket & printf [resolu tout seul ^^] - C - Programmation

Marsh Posté le 07-04-2004 à 19:54:24    

salut :)
j'ai un petit probleme avec les sockets windows
quand je lance ce programme, il se connecte sur un netcat qui écoute sur le port 4000, jusque la pas de probleme.
Quand je tape par exemple "salut" dans le netcat, le programme devrait afficher "salut" et quitter mais en fait il affiche
 
received salu???????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
????????????????????????²²²²
 
je pense que c'est un probleme de pointeur mais je pige pas la :)
Quelqu'un peut m'aider svp ? merci d avance
 

Code :
  1. #include <stdio.h>
  2. #include <winsock2.h>
  3. #include <time.h>
  4. #pragma comment (lib,"ws2_32" )
  5. void main() {
  6. WSADATA WSAData;
  7. WSAStartup(MAKEWORD(2,0), &WSAData);
  8. SOCKET sock;
  9. SOCKADDR_IN sin;
  10. char *buffer = new char[255];
  11. sock = socket(AF_INET,SOCK_STREAM,0);
  12. sin.sin_addr.s_addr= inet_addr("127.0.0.1" );
  13. sin.sin_family= AF_INET;
  14. sin.sin_port= htons(4000);
  15. bind(sock, (SOCKADDR *)&sin, sizeof(sin));
  16. connect(sock, (SOCKADDR *)&sin, sizeof(sin));
  17. recv(sock, buffer, sizeof(buffer),0);
  18. closesocket(sock);
  19. WSACleanup();
  20. printf("received %s ",buffer);
  21. }


Message édité par Rooted le 07-04-2004 à 20:03:45
Reply

Marsh Posté le 07-04-2004 à 19:54:24   

Reply

Marsh Posté le 07-04-2004 à 20:00:23    

en fait c'est bon j'avais oublié un memset ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed