Rooted | 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 :
- #include <stdio.h>
- #include <winsock2.h>
- #include <time.h>
- #pragma comment (lib,"ws2_32" )
- void main() {
- WSADATA WSAData;
- WSAStartup(MAKEWORD(2,0), &WSAData);
- SOCKET sock;
- SOCKADDR_IN sin;
- char *buffer = new char[255];
- sock = socket(AF_INET,SOCK_STREAM,0);
- sin.sin_addr.s_addr= inet_addr("127.0.0.1" );
- sin.sin_family= AF_INET;
- sin.sin_port= htons(4000);
- bind(sock, (SOCKADDR *)&sin, sizeof(sin));
- connect(sock, (SOCKADDR *)&sin, sizeof(sin));
- recv(sock, buffer, sizeof(buffer),0);
- closesocket(sock);
- WSACleanup();
- printf("received %s ",buffer);
- }
|
Message édité par Rooted le 07-04-2004 à 20:03:45
|