据我所知,基于Socket的通信在编程语言之间是独立的。这意味着,用Java语言编写的套接字程序可以与用C或C ++套接字编写的程序进行通信 程序。而且我在Stack溢出中看到了许多类似的问题,我很欣赏这些答案。 但我没有得到我正在寻找的东西。任何人都可以使用示例代码作为JAVA程序作为服务器和C ++程序作为客户端在不同的机器上运行以及它们如何通信吗?
谢谢:)
答案 0 :(得分:1)
套接字通信基本上是从一个端口向另一个端口发送一组位(数据/数据包,就像你在更高级别调用的那样)。端口只是一个文件/ IO流,可以在给定正确地址的情况下监听数据或发送数据。有效地址是有效IP地址(取决于您是否需要本地或远程通信)和端口号的组合。
要回答你的问题,我们基本上是打开一个文件,写作或等待从另一个应用程序写入。因此,文件打开,关闭,读取,写入与编程语言无关。只有在不同语言之间不同的是为实现此目的而提供的API或接口。
当您打开套接字时,您提到了要用于此通信的协议,它可能是基于应用程序目的的TCP / UDP。该协议决定如何对发送和接收的分组/数据进行排序。基本上,试图在试图沟通的两方之间建立共同点。
希望这个答案有所帮助!!