我正在用C ++创建服务器应用程序,并用Java创建客户端应用程序。我想在它们之间交换32位整数。
我遇到了麻烦,因为当我尝试从Java客户端发送消息时,我在C ++服务器中得到了一个随机答复(例如,我发送了“ 0”,而一次我收到一个数字,下一次我有不同的数字。我读过Little和Big Endian编码,但是我认为这是另一个问题,因为发送'0'会产生一个不同于0的巨大值。
Java客户端:
/999/
C ++服务器:
import java.io.DataOutputStream;
import java.net.InetAddress;
import java.net.Socket;
public class Main {
public static void main(String[] args) throws Exception{
Socket socket = new
Socket(InetAddress.getByName("127.0.0.1"),10000);
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
out.writeInt(0);
}
}
我应该如何在Java中实现我的客户端才能与C ++服务器正常工作?