但是因为我将要有3或4个bool来序列化,我认为将它们存储起来是浪费:00000001 00000001 00000000,例如,当我可以拥有00000110时.我想要获得这个我应该使用按位运算,但我对他们不太好……所以有人可以告诉我:
>如何使用按位 *** 作在一个八位字节中存储多达8个bool?
>如何使用按位 *** 作从单个八位字节中为(最多8个bool)提供适当的值?
>(而且,奖金问题,是否有人可以推荐一个简单的,非数学导向的思维,如我的,位 *** 作教程,如果存在?我发现的一切我理解但无法付诸实践……)
我正在使用C,但我猜大多数C语法语言将使用相同类型的 *** 作.
解决方法 以一个字节存储bool:bool flag; // value to storeunsigned char b = 0; // all falseint position; // ranges from 0..7b = b | (flag << position);
读回来:
flag = (b & (1 << position));总结
以上是内存溢出为你收集整理的c – 按位 *** 作是否会帮助我序列化一些bool?全部内容,希望文章能够帮你解决c – 按位 *** 作是否会帮助我序列化一些bool?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)