通过网络在c ++和c#应用程序之间进行通信

Dav*_*Dum 6 c# c++ sockets ip tcp

我有一个用c#写的简单服务器在某个端口上监听.我有一个c ++应用程序,我需要应用程序将一些信息发送到服务器.此信息是包含5个整数的结构.我以为我也可以把它作为字符串发送:类似于:"ID = 3,anotherInt = 5 ......".这是个好主意吗?如果没有,我该怎么做?

如何使它工作?你有什么建议?

谢谢.

Cub*_*ber 0

connect(client_socket, (struct sockaddr *)&clientService, sizeof(clientService));
Run Code Online (Sandbox Code Playgroud)

没关系,但是这一行应该是:

send(client_socket,(const char*)ln, strlen(ln), 0);
Run Code Online (Sandbox Code Playgroud)

其中转换(const char*)可以省略。在您的代码中,指针 ln 的值已(正确)发送,但您很可能希望发送它所指向的字符串的整个长度。

关于要发送的消息: 将整数转换为 ascii 不是一个坏主意。您还可以查看 JSON 或Google 的 protobuf格式。格式化程序或解析器可以轻松地从头开始编写。