c++ - Linux 中 C++ 的 UDP Socket 编程

标签 c++ c linux sockets

我完全不熟悉套接字编程和 C++ 的初中级。 我用 C++ 编写了代码,还用 Java 编写了另一个应用程序。 java 程序将从 c++ 代码中获取数据,该代码在几秒钟内生成数据。我正在尝试使用套接字编程在这两者之间传输数据。我在这里找到了一些代码:Socket programming tutorial .我正在使用它的 UDP java 客户端。但是,对于 UDP 服务器,它只有 C 代码。我需要将此代码嵌入到我的 C++ 应用程序中。因此我需要它的 C++ 版本。谁能帮我这个?或者给我一个提供教程的链接。无论如何,C 代码是:udpserver.c

最佳答案

您必须将 addr_len 声明为 socklen_t,而不是 int。


也就是说,main 中的前几行应该是这样的:

int sock;
int bytes_read; // <- note how this is now on its own line!
socklen_t addr_len; // <- and this too, with a different type.
char recv_data[1024];

...让其他一切保持原样。

关于c++ - Linux 中 C++ 的 UDP Socket 编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6431386/

相关文章:

c++ - 链接器错误 - 链接两个 "application"类型的项目以使用 Google Test

c++ - 这个逻辑看似正确,但行不通。有什么错误吗?

c++ - C++ 中的浮点错误

c - 为什么 scanf() 无法过滤双引号,尽管将格式设置为 [A-Za-z]

c - 子进程如何杀死其他子进程然后终止?

c++ - GLSL - GLSL 1.2 中的统一位置和着色器中的深度测试

c++ - 使用 AF_UNSPEC 的缺点/风险是什么?

c - 如何在不注销或重新启动 PC 的情况下安装字体?

linux - 使用影子分页在 ubuntu 中运行虚拟机?

linux - 如何通过动态使用 shell 脚本在直线中创建一堆数据库?