指针和固定大小缓冲区_zephyr实时操作系统中的环形缓冲区源码学习

作者在看Zephyr实时操作系统文档时,发现其实现了环形缓冲区数据结构并提供API。作者查看了版本为1.8.0的Zephyr源码,略做修改后在Windows下运行,还给出了相关文件及运行结果,同时提醒用VSCode编辑、命令行cl编译时文件保存格式问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

6230ab3b21ece63a269de1d0f5aebd65.png

前几天看zephyr实时操作系统的文档时,发现它实现了环形缓冲区数据结构,提供了API接口供用户使用,作为一个开源的软件,好处就是可以看一看它的源码,学习(剽窃)以下,对比以下自己写的,我看的zephyr源码是我好久之前下载的,zephyr版本是1.8.0,和现在版本环形缓冲区实现大同小异,我略做了修改,并在windows下运行了一下。

ring_buffer.h

#ifndef __RING_BUFFER_H__

ring_buffer.c

/* ring_buffer.c: Simple ring buffer API */

测试程序

main.c

#include 

存储示意

64e5db5571a35afe9c38161d02499d18.png

运行结果

78234290ff18193a173bdcf6a0cda108.png

坑:vscode编辑文件,然后命令行cl编译,把文件保存成UTF-8 with BOM,要不然编译可能造成千奇百怪的错误及中文乱码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值