limit - 将 null/invalid/space 等效存储为INT_MIN 或 LONG_MIN
问题描述
我有一个数据包数据结构,它聚合来自多个源的数据以进行重传。即使某些来源提供无效或无效数据,我的完整数据包也必须定期发出。重要的是,这些值始终被视为无效,但仍然被传输和存储。在这种情况下,正数、0 和负数都是具有特定含义的有效值。然而,由 2 的补码编码产生的奇怪的额外负值相对无用。
我的数据包的开头将传输 <limit.h> INT_MIN 和 LONG_MIN 来表征传输机器,然后使用这些值中的任何一个作为字段分隔符。分隔符,指示接近的、可预测长度的比特流的字长。有效比特流中任何地方出现前面的 MIN 值表示流中特定偏移处的单个无效/空值。
这似乎不是一个特别新颖的想法,但我不知道以前的实现。希望有人可以指导我搜索一些搜索词、库或示例。喜欢 C/C++ 的 Arduino 是首选。
解决方案
推荐阅读
- sqlite - 在 perl 中关闭 AutoCommit 调用 SELECT 语句时,SQLite 是否执行磁盘活动?
- c# - 带有 WHERE 条件的 XElement LINQ 失败
- javascript - 使用jquery将fadeIn更改为幻灯片
- javascript - javascript-obfuscator 显示的不清楚的错误
- javascript - React 中的样式特定 HTML 标签
- reactjs - SyntaxError:意外的令牌,预期的“”
- sql - NodeJS 和 MariaDB,查询中的占位符
- html - 如何使用 Safari 从文本节点中删除第一个和最后一个空格?
- javascript - react-testing-library - fireEvent.select() 不工作
- python - 从字符串中删除 "