ソケット通信でPythonと値を送受信したい
aoeu 2018/12/11(Tue) 21:11
ソケット通信でPythonと整数または文字列を送受信したいと思っています.コードは以下の通りです.
c++側から送った値はPython側で読み込めるのですが,Python側から送った値をc++側で読み込むことができません.どうしたらよいでしょうか.
環境はVisual Studio Community 2017,Python3.6です.
**************************************************
C++
**************************************************
# include <Siv3D.hpp>
# include <iostream>
void Main()
{
TCPServer server;
server.startAccept(50000);
Point friendPos(0, 0);
Window::SetTitle(L"TCPServer: 接続待機中...");
char data[4] = {};
while (System::Update())
{
if (server.isConnected())
{
Window::SetTitle(L"TCPServer: 接続完了!");
while (server.read(data, 4));
Console::Open();
std::cout << "data = " << data << std::endl;
Console::Close();
server.send("456");
}
if (server.hasError())
{
server.disconnect();
Window::SetTitle(L"TCPServer: 再接続待機中...");
server.startAccept(50000);
}
}
}
**************************************************
**************************************************
python
**************************************************
import socket
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.connect(('127.0.0.1', 50000))
s.sendall(b"123")
data = s.recv(32)
print(data)
**************************************************
Reputeless 2018/12/12(Wed) 12:01