Advertisement
erzis

Untitled

Nov 11th, 2016
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.21 KB | None | 0 0
  1. #include<SFML/Network.hpp>
  2. #include<SFML/Audio.hpp>
  3. #include<SFML/Graphics.hpp>
  4. #include<string>
  5. #include<iostream>
  6.  
  7. using namespace std;
  8.  
  9. int main()
  10. {
  11. sf::IpAddress ip = sf::IpAddress::getLocalAddress();
  12. sf::TcpSocket socket;
  13. char connectionType, mode;
  14. char buffer[2000];
  15. size_t received;
  16. string text = "Polaczono z: ";
  17.  
  18. cout << "Wprowadz (s) dla serwera, wprowadz (c) dla klienta" << endl;
  19. cin >> connectionType;
  20.  
  21. if (connectionType == 's')
  22. {
  23. sf::TcpListener listener;
  24. listener.listen(2000);
  25. listener.accept(socket);
  26. text = text + "Serwer";
  27. mode = 's';
  28. }
  29. else if (connectionType == 'c')
  30. {
  31. socket.connect(ip, 2000);
  32. text = text + "Klient";
  33. mode = 'r';
  34. }
  35. socket.send(text.c_str(), text.length() + 1);
  36.  
  37. socket.receive(buffer, sizeof(buffer), received);
  38.  
  39. cout << buffer << endl;
  40.  
  41. bool done = false;
  42.  
  43. while (!done)
  44. {
  45. if (mode == 's')
  46. {
  47. getline(cin, text);
  48. socket.send(text.c_str(), text.length() + 1);
  49. mode = 'r';
  50. }
  51. else if (mode == 'r')
  52. {
  53. socket.receive(buffer, sizeof(buffer), received);
  54. if (received > 0)
  55. {
  56. cout << "Odebrano: " << buffer << endl;
  57. mode == 's';
  58. }
  59. }
  60. }
  61.  
  62. system("pause");
  63.  
  64. return 0;
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement