随笔分类 - 【技能提升】 / 【C】
摘要:为了确保数据按照4位大小端(即32位整数)进行转换,我们需要在将数据写入文件之前,对每个32位整数进行大小端转换。具体来说,如果原始数据是以大端序(Big Endian)存储的,而目标系统是小端序(Little Endian),或者反之,则需要进行大小端转换。 以下是一个示例代码,展示了如何在将数据
阅读全文
摘要:提供一个纯C语言的图像压缩程序,但是要达到将6MB的图片压缩到100KB以内的要求,有损压缩肯定是必须的。同时,要在速度上有所提升,我可以为您提供一个基于多线程的图像压缩程序。 首先,我们需要了解一下图像压缩的原理。常见的图像压缩算法主要有两种:无损压缩和有损压缩。无损压缩算法能够保证原始图像的质量
阅读全文
摘要:数据十六进制打印输出: 点击查看代码 void writeHexToFile(const unsigned char *buffer, int length) { for (int i = 0; i < length; ++i) { xil_printf("%02X ", buffer[i]); }
阅读全文
摘要:字符串值相加校验 第一种方式: 点击查看代码 uint8_t checksum = calculate_checksum(&packageHeadSendTh); // 计算校验和的函数 uint8_t calculate_checksum(struct PackageHeaderSendTh *h
阅读全文
摘要:TCP实现 传输控制协议(TCP,Transmission Control Protocol) 是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。TCP是因特网中的传输层协议,使用三次握手协议建立连接。当主动方发出SYN连接请求后,等待对方回答SYN+ACK,并最终对对方的
阅读全文
摘要:在 C 语言中,线程池通常通过 pthread 库来实现。以下是一个详细的说明,介绍了 C 语言线程池的常见实现方式,包括核心概念、实现步骤和具体的代码示例。 点击查看代码 1. 线程池的基本结构 线程池的核心概念是有一个固定数量的线程等待执行任务。任务通常通过任务队列传递,线程从队列中取出任务并执
阅读全文
摘要:C语言格式输出 1.转换字符说明 C语言格式输出方式 2.常用的打印格式 在 C 语言中,格式输出主要依靠 printf 函数来实现。 以下是一些 C 语言格式输出的代码举例及相关说明: printf("%2d",123),因为输出的部分有三位数,但是要求的有两位,所以原样输出为:123;print
阅读全文
摘要:UDP(User Datagram Protocol,用户数据报协议)是一种无连接的传输层协议,适用于对实时性有较高要求的应用场景,如视频流传输、语音通信、在线游戏等。与TCP不同,UDP不保证数据的可靠性和顺序性,但其传输速度较快。 本文将介绍如何使用C语言编写一个简单的UDP服务器程序,以及如何
阅读全文
摘要:
项目介绍 项目Github地址:https://github.com/ocornut/imgui Dear ImGui (ImGui) 是一个开源的、用 C++ 编写的图形用户界面(GUI)库。它由OCornut创建,旨在为应用程序和工具提供创建用户界面的简单高效的方式。 以下是 Dear ImGu
阅读全文
