刷新
模拟实现 memcpy --浅谈C语言

博主头像 内存拷贝 - memcpy 描述 C 库函数 void *memcpy(void *str1, const void *str2, size_t n) 从存储区 str2 复制 n 个字节到存储区 str1。 memcpy 是最快的内存到内存复制子程序。 它通常比必须扫描其所复制数据的strcpy ...

数据结构-2.单向链表的实现

博主头像 节点结构体设计 struct LinkNode { // 数据域 void* data; // 指针域 struct LinkNode * next; }; data:一个 void* 类型的指针,指向节点存储的数据。使用 void* 是为了链表能够存储不同类型的数据。 next:一个指向下一个 L ...

模拟实现 memset --浅谈C语言

博主头像 memset() 描述 C 库函数 void *memset(void *str, int c, size_t n) 用于将一段内存区域设置为指定的值。 memset() 函数将指定的值 c 复制到 str 所指向的内存区域的前 n 个字节中,这可以用于将内存块清零或设置为特定值。 在一些情况下,需 ...

模拟实现 memmove --浅谈C语言

博主头像 内存移动 - memmove 也是拷贝函数,源字符串可能会被覆盖,但保证目标是想要的 描述 C 库函数 void *memmove(void *str1, const void *str2, size_t n) 从 str2 复制 n 个字符到 str1,但是在重叠内存块这方面,memmove() ...

FFmpeg开发笔记(四十三)使用SRS开启SRT协议的视频直播服务

博主头像 ​《FFmpeg开发实战:从零基础到短视频上线》一书在第10章介绍了轻量级流媒体服务器MediaMTX,通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能实在是太简单了,无法应用于真实直播的生产环境,真正能用于生产环境的流媒体服务器还要看SRS或者ZLMediaKi ...

C语言中的断言函数assert

博主头像 简介 assert 是 C 语言中的一个宏,用于在程序运行时进行条件检查,主要用于调试目的。它在 <assert.h> 头文件中定义,用于验证程序中的假设条件是否成立,如果不成立,程序将打印错误信息并终止执行。 特点 调试用途:主要用于捕获程序中的逻辑错误或不期望的条件。 可移除:通过定义 NDEB ...

FFmpeg开发笔记(四十二)使用ZLMediaKit开启SRT视频直播服务

博主头像 ​《FFmpeg开发实战:从零基础到短视频上线》一书在第10章介绍了轻量级流媒体服务器MediaMTX,通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能实在是太简单了,无法应用于真实直播的生产环境,真正能用于生产环境的流媒体服务器还要看SRS或者ZLMediaKi ...

c语言模拟Python的命名参数

博主头像 最近在书里看到的,让c语言去模拟其他语言里有的命名函数参数。觉得比较有意思所以记录一下。 目标 众所周知c语言里是没有命名函数参数这种东西的,形式参数虽然有自己的名字,但传递的时候并不能通过这个名字来指定参数的值。 而支持命名参数的语言,比如python里,我们能让代码达到这种效果: def k_f ...

FFmpeg开发笔记(四十一)结合OBS与MediaMTX实现SRT直播推流

博主头像 ​《FFmpeg开发实战:从零基础到短视频上线》一书的“10.2 FFmpeg推流和拉流”提到直播行业存在RTSP和RTMP两种常见的流媒体协议。除此以外,还有于2017年推出的SRT协议,相比常见的RTMP协议,SRT协议具有更低的延迟,并且消除了卡帧、抖动等花屏现象。腾讯视频云已经引入了SRT协 ...

C语言指针易混淆知识点总结

博主头像 指针 定义 指针是一个变量,存储另一个变量的内存地址,它允许直接访问和操作内存中的数据,使得程序能够以更灵活和高效的方式处理数据和内存。 获取变量地址:使用取地址符 &。 访问地址上的数据:使用解引用符 *。 例子1 指针是存储另一个变量地址的变量。通过使用取地址符 & 和解引用符 *,我们可以灵活 ...

C++ 鼠标轨迹API【神诺科技SDK】

博主头像 一.鼠标轨迹模拟简介 传统的鼠标轨迹模拟依赖于简单的数学模型,如直线或曲线路径。然而,这种方法难以捕捉到人类操作的复杂性和多样性。AI大模型的出现,使得神诺科技 能够通过深度学习技术,学习并模拟更自然的鼠标移动行为。 二.鼠标轨迹算法实现 AI大模型通过学习大量的人类鼠标操作数据,能够识别和模拟出自 ...

FFmpeg开发笔记(四十)Nginx集成rtmp模块实现RTMP推拉流

博主头像 《FFmpeg开发实战:从零基础到短视频上线》一书的“10.2.2 FFmpeg向网络推流”介绍了轻量级流媒体服务器MediaMTX,虽然MediaMTX使用很简单,可是不能满足复杂的业务需求,故而实际应用中需要引入专业的流媒体服务器。 nginx-rtmp是开源WEB服务器Nginx可增强的第三方 ...

C语言指针笔记

博主头像 该笔记整理自 阮一峰老师的《C语言教程》和部分网上资料 什么是指针 指针就是一个代表某个内存地址的值 声明和初始化指针变量 int a = 10; // 声明一个指针变量p,并将a的地址赋给p int* p = &a; // 输出p的值(地址值) printf("%p", p); // 输出p所指向 ...

123···11>