随笔分类 - 【技能提升】 / 【C++】
摘要:点击查看代码 ///////////////////////////////////////////// CC = g++ CFLAGS=-Wall -O2 TARGET = main SRCS := (patsubst %cpp, %o, $(
阅读全文
摘要:点击查看代码 实现简单的Socket通信 服务端代码(Server) #include <stdio.h> #include <winsock2.h> #pragma comment(lib,"ws2_32.lib") #define PORT 9999 int main() { WSADATA W
阅读全文
摘要:在 C 语言中,线程池通常通过 pthread 库来实现。以下是一个详细的说明,介绍了 C 语言线程池的常见实现方式,包括核心概念、实现步骤和具体的代码示例。 点击查看代码 1. 线程池的基本结构 线程池的核心概念是有一个固定数量的线程等待执行任务。任务通常通过任务队列传递,线程从队列中取出任务并执
阅读全文
摘要:C语言格式输出 1.转换字符说明 C语言格式输出方式 2.常用的打印格式 在 C 语言中,格式输出主要依靠 printf 函数来实现。 以下是一些 C 语言格式输出的代码举例及相关说明: printf("%2d",123),因为输出的部分有三位数,但是要求的有两位,所以原样输出为:123;print
阅读全文
摘要:点击查看代码 C++17 标准带来了 std::filesystem库, 提供了强大的工具来处理文件路径, 目录以及其他与文件系统相关的操作. 这篇文章适合 C++ 初学者以及希望掌握 C++17 新特性的开发者, 旨在帮助他们高效地完成文件系统相关任务. 什么是 std::filesystem?
阅读全文
摘要:在C++中,规定空类(即类中没有任何数据成员、成员函数、虚函数等成员的类)的大小为1字节,这背后主要有以下几方面的原因: 保证对象的唯一性和可区分性 在C++的面向对象编程模型中,对象是类的实例化结果,每个对象在内存中都需要占据一定的空间,以便程序能够通过地址等方式对其进行操作和区分。即使一个类是空
阅读全文
摘要:对于Framework工程师来说,必要C或者C++编程能力是必须的,像对设备节点的操作是最基本的操作,那么我们便会用到open和read函数。open()函数用于打开文件,而read()函数用于从打开的文件中读取数据。 open() 函数 open()函数是C/C++标准库中的一个POSIX标准函数
阅读全文
摘要:JsonCpp 是一个C++库,用于解析和生成JSON数据。它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式。 安装Jsoncpp 我们可以输入以下命令安装jsoncpp库。 sudo yum install -y jsoncpp-devel 安装时默认安装动态库。头
阅读全文
摘要:引言 在C++中,当两个或更多的线程需要访问共享数据时,就会出现线程安全问题。这是因为,如果没有适当的同步机制,一个线程可能在另一个线程还没有完成对数据的修改就开始访问数据,这将导致数据的不一致性和程序的不可预测性。为了解决这个问题,C++提供了多种线程同步和互斥的机制。 互斥量(Mutex) 互斥
阅读全文
摘要:
项目介绍 项目Github地址:https://github.com/ocornut/imgui Dear ImGui (ImGui) 是一个开源的、用 C++ 编写的图形用户界面(GUI)库。它由OCornut创建,旨在为应用程序和工具提供创建用户界面的简单高效的方式。 以下是 Dear ImGu
阅读全文
