
Hat
译者
⚠️ 注意
如果您发现了错误,欢迎 参与贡献。
bmap 模块提供高效的位图操作,用于协议标志位管理和集合运算。
基于 Fowler-Noll-Vo (FNV) 哈希算法的通用哈希表 HASH,用于路由属性去重、邻居查找等高频操作场景。
buffer 是动态增长的字节缓冲区,用于构造网络数据包。支持追加、预分配和截断操作,是 BIRD 数据包生成的基础。
| 宏 | 说明 |
|---|---|
MIN(a, b) / MAX(a, b) | 取最小/最大值 |
ARRAY_SIZE(x) | 获取静态数组元素个数 |
ABS(x) | 取绝对值 |
container_of(ptr, type, member) | 从成员指针获取父结构指针(Linux 内核经典宏) |

译者
原文作者: <Ondrej Filip>, <Martin Mares>, <Maria Matejka>, <Ondrej Zajicek> 原文链接: https://bird.network.cz/?get_doc&v=20&f=prog-7.html#ss7.3 原文标题: 7.3 Miscellaneous functions
遵循协议: CC BY-NC-SA 4.0 / 译者: hat / 翻译时间: 2026-05-01 / 本文链接: https://bird.xmsl.dev/docs/developer-guide/7-3-misc.html