我现在要用0,1表示一组事物的某属性。
觉得用Integer类型的话会浪费空间,想用
dim type() as byte
然后给type的每bit位设置0或1
除了每8位算出一个值赋给type(i),
如:
属性顺序为
10110111
则
type(i)=183可不可以一个bit位一个bit位赋值呀??
觉得用Integer类型的话会浪费空间,想用
dim type() as byte
然后给type的每bit位设置0或1
除了每8位算出一个值赋给type(i),
如:
属性顺序为
10110111
则
type(i)=183可不可以一个bit位一个bit位赋值呀??
解决方案 »
- 关于VB读取word中某一行的问题,求求各位高手帮我解决下!!!
- 请大家帮忙看看我这个用GDI+改变图片尺寸的函数问题在哪里?
- 这个网站的验证码全部是数字,比较简单,可以自动识别码?
- 我想在窗口改变位置(不是大小)的时候处理一些事情 该如何做?
- 新人求救,急!~~~,关于VB和CAD出现的错误
- 请问一下5ivb.com(我爱vb)这个域名大概值多少钱?
- 怎么样在往msflexgrid的表里添加记录时,让它显示出最后一条记录的内容.
- 有关窗体,菜鸟问题
- VB有一个选择日期的对话框,我怎么调啊?怎么读到反回值?
- 大神救命啊!想了一天了,解决不了
- 调用ExitWindowsEx(EWX_SHUTDOWN + EWX_POWEROFF, 0)为什么老是注销 而不是关机
- 我想在播放*.wav声音时,指定用左声道来播放!我急用啊!
byte和Integer转换没视过
Integer对于那串0,1不是很长可能很适用
除非你的数组会很大很大........
//觉得用Integer类型的话会浪费空间你可以参考一下C/C++的做法,声明成Integer或者Long,需要设什么位,就用Or,需要去掉什么位,就用And Not。用Byte浪费,用Boolean更浪费。因为Boolean和Integer占用的空间相同——16bit。
byte表示范围为0到255,long表示范围是-2147483648到2147483648关注一下,看高手的回答~
?(&HB7 and &H08)<>0
结果为False 表示不是0 其实对于许多BIT操作,可以用数学操作来实现的,
如右移二位,可以用 \ 4 来实现,只不过很少有人用这种方法罢了.对于楼上的,这样是不能节省空间,和LONG空间是一样的,只不过可以比较容易的取出1个BYTE罢了.
把第一位赋1
a = a and &HFE
把第一位赋0