关于KDB C API中创建布尔类型空值的技术问询
KDB C API中如何创建布尔类型的空值?
嘿,这个问题我之前在用KDB C API写数据的时候也碰到过!确实整数、浮点数的空值创建方法很直观,但布尔类型的空值藏得有点深,不过完全不用靠整数来替代,有原生的解决方案~
在KDB的类型体系里,布尔类型(b类型)底层是单字节存储的,它的空值对应的编码是0x80(十进制的128)。你直接用kb()函数传入这个值就能创建布尔空值了,代码示例如下:
k null_bool = kb(0x80); // 创建布尔类型的空值
这个方法完全符合KDB的类型规范:插入到表中后,在Q端查询会显示为0Nb(布尔类型的标准空值表示),而且它和正常布尔值一样只占1字节,不会有额外的内存开销。
内容来源于stack exchange
相关产品推荐
相关产品推荐

