# Linux-Cpp-Useful-Demo **Repository Path**: xxpcb/linux-cpp-useful-demo ## Basic Information - **Project Name**: Linux-Cpp-Useful-Demo - **Description**: 基于Linux与Cpp的实用例程 - **Primary Language**: Unknown - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2022-10-24 - **Last Updated**: 2024-08-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于Linux与Cpp的实用例程 ## 编译说明 本项目例程在Ubuntu Linux中运行测试,理论上也适用于嵌入式Linux平台,更换对应的编译工具链即可。 在Ubuntu Linux中编译运行时,可用g++编译器进行命令行编译,如: ```sh g++ server.cpp -std=c++11 -lpthread -o server ``` - -std=c++11 指定使用c++11 - -lpthread 使用线程功能 ## 例程 ### UDP广播实例 UDP客户端广播,向服务端请求服务器的IP地址,服务端收到广播后发出自己的IP地址,UDP客户端收到IP地址后,启动TCP客户端,连接TCP服务端,从而实现IP地址的自动获取。 源码:[01-udpbrocast](01-udpbrocast) 图文教程:[Linux网络编程-TCP客户端如何获取要连接的服务端IP?](https://zhuanlan.zhihu.com/p/568435662) 测试结果:[01-udpbrocast](01-udpbrocast) ![](img/1.png) ### Unix域socket通信 Unix域socket通信,测试了TCP和UDP两种通信方式。Unix域socket通信,不需要指定IP和端口号,通过文件的方式进行通信。 源码:[02-unixsocket](02-unixsocket) 图文教程:[没有IP和端口号,可以进行socket通信吗?](https://zhuanlan.zhihu.com/p/576899630) 测试结果: ![](img/2.png) ### epoll多路复用功能测试 epoll的全称为eventpoll,是linux内核实现IO多路复用的一个实现。在上篇例程的基础上,通过给服务端增加epoll监听功能,实现对多个客户端的数据进行接收。 源码:[03-epolltest](03-epolltest) 图文教程:[epoll使用实例:TCP服务端处理多个客户端请求](https://zhuanlan.zhihu.com/p/578706441) 测试结果: ![](img/3.png) ## 推荐学习 - B站视频: - 个人博客: , - 知乎: - CSDN: - 微信公众文章:![](img/wxgzh.png) 对你有帮助,请多多转发分享,感谢支持~