Bonjour,
Je souhaite faire communiquer deux programmes avec des sockets, l'un en Java, l'autre en C++.
Mon programme Java fait office de serveur et celui en C++ de client.
C�t� Java je n'ai pas de soucis (j'ai d�j� test� de faire ma communication avec deux programmes Java et �a marche nickel)
Par contre je n'obtiens pas du tout ce que je veux avec un client c++ (je dois forc�ment foirer un truc un moment), sur ma console, j'ai un caract�re bizarre qui s'affiche (la fraction 1/4 suivi d'un Y majuscule avec un accent) et ce, peu importe ce que j'envoie (un int, un string, ...)
Ci-dessous mon code C++, je peux vous donner le code Java si vous le souhaitez
Merci d'avance
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 #include <iostream> #include <winsock2.h> #include <stdio.h> #pragma comment(lib, "ws2_32.lib") using namespace std; int main() { WSADATA WSAData; WSAStartup(MAKEWORD(2,0), &WSAData); SOCKET sock; SOCKADDR_IN sin; char buffer[32]; sin.sin_addr.s_addr = inet_addr("127.0.0.1"); sin.sin_family = AF_INET; sin.sin_port = htons(13370); sock = socket(AF_INET,SOCK_STREAM,0); if(connect(sock, (SOCKADDR*)&sin, sizeof(sin)) != SOCKET_ERROR) { cout<<"connexion"<<endl; if(recv(sock, buffer, 32, 0) != SOCKET_ERROR) { cout<<"reception : "<<buffer<<endl; printf("%s", buffer); } else cout<<"fail reception"; } else cout << "fail connexion"; closesocket(sock); WSACleanup(); return 0; }
pikmin
Partager