c/c 有没什么好的位操作的类库?

c/c 有没什么好的位操作的类库? - 故障解答 - 电脑教程网

c/c 有没什么好的位操作的类库?

日期:2006-08-05   荐:
c/c 有没什么好的位操作的类库?图像处理的时候位操作用的很多,怎么没有这样的工具了?mmx xmm标准的c 的bitset标准C 的bitset#include <bitset>操作 功能 用法test( pos ) pos 位是否为1? a.test( 4 )any() 任意位是否为1? a.any()none() 是否没有位为1? a.none()count() 值是1 的位的个数 a.count()size() 位元素的个数 a.size()[pos] 访问pos 位 a[ 4 ]flip() 翻转所有的位 a.flip()flip( pos ) 翻转pos 位 a.flip( 4 )set() 将所有位置1 a.set()set( pos ) 将pos 位置1 a.set( 4 )reset() 将所有位置0 a.reset()reset(pos) 将pos 位置0 a.reset( 4 )声明举例声明了一个含有32 个位的bitset 对象位的顺序从0 到31bitset< 32 > bitvec;又没有针对字符串的了?bitset好像最长只可以32位吧?gz针对字符串 就用 <string> 咯,里面的属性和方法很多bitset< 32 > bitvec;表示声明一个32位的 bitvec 32 是可变的,取整最高可以去几位,还要看计算的情况,可以取得64位,高32位和低32位upvector<bool>,要看情况。有的是用位实现的,像bcb,有的不是,像vc6,vc7的我不清楚。无论是bitset,string,vector都属于STL(Standard Template Library)它有一套模板,对一般的应用都有很好的支持且支持几乎所有的C 编译器(VC,BCB,GCC,INTEL)呵呵,楼上说反了吧, 是几乎所有编译器几乎都支持STL, 看好坏VC.Net支持最好, VC6支持特烂, GCC还不错, 其他没有用过.:)vector<bool>可以用byte数组初始化么?如果可以又怎么转化为byte?
标签: