1、c++ acl udp服务器客户端简单实例-服务器端(1)

// udpserverDemo.cpp : 定义控制台应用程序的入口点。

//

#include "stdafx.h"

#include "acl_cpp/lib_acl.hpp"

using namespace acl;

int _tmain(int argc, _TCHAR* argv[])

{

acl_cpp_init();

const char* server_ip = "127.0.0.1:12345";

const int BUF_SIZE = 4096;

char buf[BUF_SIZE];

acl::socket_stream udp_server;

if (!udp_server.bind_udp(server_ip)) {

return 1;

}

std::cout << "等待客户端发送UDP数据..." << std::endl;

while (true) {

acl::string client_addr;

int recv_len = udp_server.read(buf, BUF_SIZE, false);

if (recv_len <= 0) {

continue;

}

buf[recv_len] = '\0';

const char* strpeerip = udp_server.get_peer_ip();

int send_len = udp_server.write(buf, recv_len);

if (send_len <= 0) {

std::cerr << "向客户端[" << client_addr.c_str()

<< "]发送响应失败!" << std::endl;

}

else {

std::cout << "已向[" << client_addr.c_str() << "]回显数据: " << buf;

}

}

udp_server.close();

return 0;

}

相关推荐
誰能久伴不乏6 小时前
Qt/C++ 架构之美:用一个“水龙头”隐喻,讲透面向接口编程与彻底解耦
c++·qt·架构
楼田莉子6 小时前
Linux网络:数据链路层
linux·服务器·开发语言·网络·c++·后端
AI进化营-智能译站6 小时前
ROS2 C++开发系列01:在ROS2上编写第一个C++ hello word
开发语言·c++·ai·word
fish_xk6 小时前
Linux基础指令。
linux·运维·服务器
艾莉丝努力练剑7 小时前
【Linux网络】Linux 网络编程入门:UDP Socket 编程(上)
linux·运维·服务器·网络·c++·udp
代码中介商7 小时前
Linux多线程编程完全指南:线程同步、互斥锁与生产者消费者模型
linux·运维·服务器
(Charon)7 小时前
【C++/Qt】Qt 实现 POP3/IMAP 邮件测试工具:连接邮箱服务器、登录与读取邮件
服务器·开发语言·c++
可视化运维管理爱好者7 小时前
rg完整中文操作指南
linux·运维·服务器·ai
CN-Dust7 小时前
【C++】for循环嵌套例题专题
java·c++·算法