Bonjour!

J'espere etre au bon endroit dans le forum pour ce post

Voila mon probleme :

Je suis en train de mettre en place un systeme client-serveur TCP en C++ avec socket.h

Pourtant j'ai un soucis lorque je veux envoyer plusieurs données à la suite.

J'ai surchagé les opérateurs << et >> pour clarifier les envois (respectivement send() et recv()).

Exemple client :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
client_socket << 2;  //J'envoie 2à travers le socket client vers le serveur
//client_socket >> reply; //Je recois un string de la part du serveur
//cout << reply <<endl;
client_socket << 8;
Et le pendant coté serveur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
 
new_sock >> menu;  //Je recois un int du client
cout << menu <<endl;
//new_sock << "Ok..."; //J'envoie un string au client
new_sock >> nb;
cout << "Recu pour le menu : " << menu <<endl;
cout << "Recu comme nombre : " << nb <<endl;
J'espere que l'ecriture avec les operateur de flux est compréhensible

Le soucis, coté serveur (je repete les instructions vues plus haut) :
Lors du premier transfert, menu=2 et nb = 8 tout va bien
Lors du 2e transfert menu=28 et nb est toujours attendu

En enlevant les commentaires tout marche mais je ne peux me resoudre à faire un retour a chaque envoi...
Y a t il un probleme de buffer?

J'espere que quelqu'un pourra m'aider, merci d'avance