首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从字符串读取大小后分配大小为'n‘的缓冲区

从字符串读取大小后分配大小为'n‘的缓冲区
EN

Stack Overflow用户
提问于 2019-01-03 18:12:41
回答 1查看 110关注 0票数 0

我在研究USB通讯。在这里,每次来自主机的数据大小都不同。为了避免来自主机的这种情况,它将在发送数据之前发送数据的大小,所以我需要分配主机发送的缓冲区大小。

来自主机的数据是" 5“这是一个字符串,我需要分配一个大小为5的缓冲区。例如: rec_buff5。从主机读取大小后。

每次大小变化时,我如何使用C代码片段来实现这一点。我不知道该怎么做。我以前在java上工作,我是C语言的新手。

我需要在不使用动态内存分配的情况下这样做。

任何帮助都将提前appreciated.Thanks。

EN

回答 1

Stack Overflow用户

发布于 2019-01-03 19:00:06

我假设您不希望使用可变大小的块进行内存分配,因为您不希望内存碎片。然后,您要查找的是内存池(固定块大小)或固定大小的数组(在.bss部分中预先分配的数组)。

您可以查看一下API for memory pool in Zephyr RTOS的外观,并检查源代码以了解实现细节。还有question about implementing own memory pool

这个系统的一个重要方面是处理当输入超过缓冲区中最大可用空间时发生的情况。例如,您可以实现某种类型的状态机,并在块中解析输入或简单地中止。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54020172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档