.net bool []每个项目使用一位还是一个字节?

时间:2009-07-15 11:22:54

标签: .net arrays storage

在.net中,bool []每个数组项使用一位还是一位?即,它会自动打包bool值吗?我知道一个bool使用1个字节,但是CLR可能有bool [] ...

的特殊情况

3 个答案:

答案 0 :(得分:8)

关于大小,它将一个bool数组存储为一个字节数组,没有特殊情况。

如果要打包数据,可能需要检查BitArray类。

答案 1 :(得分:7)

你想要的是BitArraybool[]没有得到CLR的特殊待遇。

答案 2 :(得分:4)

每个值一个字节。我试图找到实际指定的位置(如果确实如此),但对于当前的.NET CLR来说确实如此。

编辑:这是通过打印sizeof(bool)确认的排序,打印1 - 尽管C#中的sizeof运算符最终没有调用sizeof IL指令......