标签: c linux
我需要在C中实现一个有效的位数组。从我所看到的C不支持这个,所以你可以使用一个整数数组(根据我看过的一个站点)然后使用shift来访问个别位。简单地声明一个bool数组是一回事还是内存效率更低?
答案 0 :(得分:3)
是的,一个简单的_Bool数组需要比整数数组和一些位移更多的存储空间。 _Bool数组在sizeof(_Bool)空间(通常是单个字节)中存储一位数据。整数数组每个字节可以存储更多位(最小8位)。
_Bool
sizeof(_Bool)