社区
C++ 语言
帖子详情
(内功深厚的高手进)如何实现一个bit数组
allenchou
2005-04-05 11:45:45
请问如何实现一个bit数组,
可以通过下标进行某一位的置位或清零.
...全文
642
13
打赏
收藏
(内功深厚的高手进)如何实现一个bit数组
请问如何实现一个bit数组, 可以通过下标进行某一位的置位或清零.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yjh1982
2005-04-25
打赏
举报
回复
std::vector<bool>的代码.
xxxdg
2005-04-25
打赏
举报
回复
class Bit
{
public:
Bit & operator = (Bit & value)
{
data = value.data;
return *this;
}
Bit & operator = (char value)
{
data = value & 1;
return *this;
}
private:
char data : 1;
};
int main()
{
Bit x[10];
return 0;
}
bing_huo
2005-04-24
打赏
举报
回复
要像一般A[n]=0这样用起来方便,好像只有搞运算符重载.
bitset 就可以啊。。有现成的为什么不用?
useresu
2005-04-24
打赏
举报
回复
bitset
joymouse
2005-04-24
打赏
举报
回复
要像一般A[n]=0这样用起来方便,好像只有搞运算符重载.
bing_huo
2005-04-24
打赏
举报
回复
std::bitset
std::vector<bool> 也可以 因为内部也是用bit数组做的
具体操作看stl相关资料~~
llmsn
2005-04-24
打赏
举报
回复
呵呵,对C的移位操作不是很熟悉.
zhousqy
2005-04-24
打赏
举报
回复
看programming pearls
arrowcy
2005-04-24
打赏
举报
回复
1楼的再加上运算符重载的话,用起来就很方便了
arrowcy
2005-04-24
打赏
举报
回复
bool a[N]实质上还是一个字节存一个位的信息
astrophor
2005-04-24
打赏
举报
回复
bool a[N]?
zengwujun
2005-04-24
打赏
举报
回复
std::bitset
allenchou
2005-04-24
打赏
举报
回复
没人搞定自己搞定:
#define MAXSIZE 100000
#define BASE 32 // WINwin32 下int是32 bit
#define SHITF 5
#define MASK 0X1F
int a[1 + MAXSIZE/BASE];
void set(int i)
{ a[i>> SHIFT] |= 1 << (i & MASK); }
void clr(int i)
{ a[i >> SHIFT] &| = ~(1 << (i & MASK));}
int test(int i)
{ return a[i>>SHIFT] & (1 << (i & MASK));}
嵌入式C/C++面试题(转帖)
1.引言 本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵。文中的大多数面试题来自各大论坛,部分试题解答也参考了网友的意见。 许多面试题看似简单,却需要
深厚
的基本功才能给出完美的解答。企业要求面试者写
一个
最简单的strc
深入解析位运算:从基础原理到实战应用
位运算作为计算机底层核心操作,直接对二
进
制位
进
行处理,是理解计算机工作原理的关键技术。其核心原理基于二
进
制补码表示和逻辑门电路,通过四种基本运算符(与、或、异或、非)
实现
高效位级操作。在技术价值上,位运算能显著提升性能、节省内存空间,是优化算法和系统设计的利器。实际应用场景广泛,包括权限系统设计、颜色编码处理、数据结构优化(如布隆过滤器)和网络协议解析等。本文以权限系统和颜色编码为例,详细解析位运算的掩码操作和位组合技巧,帮助开发者掌握这一底层高效工具。
Cortex-M4核心外设深度解析:SysTick、NVIC、MPU、FPU实战指南
在嵌入式系统开发中,核心外设是构建实时、可靠应用的关键硬件基础。其设计遵循实时性、可靠性与能效三大原则,通过私有外设总线统一访问,为系统提供精准计时、中断管理、内存保护和硬件加速等核心功能。理解这些外设的工作原理,能显著提升系统性能与稳定性,是开发高效嵌入式软件的基石。例如,系统定时器(SysTick)为实时操作系统提供精确心跳,而嵌套向量中断控制器(NVIC)则确保了中断响应的快速与有序。这些技术广泛应用于工业控制、物联网设备、汽车电子等对实时性和可靠性要求极高的场景。本文将聚焦于Cortex-M4处理器
Java位运算深度解析:从权限系统到算法优化的实战应用
位运算作为计算机底层核心运算之一,直接操作数据的二
进
制位,是理解计算机数据表示与处理原理的基础。其核心原理在于利用与、或、异或、移位等操作,高效地完成特定位的读取、设置与计算。这项技术的核心价值在于能
实现
极致的空间与时间效率,常用于设计紧凑的数据结构和优化密集计算。在应用场景上,位运算广泛应用于权限系统设计、状态标志管理、哈希算法优化以及高性能计算等领域。本文以Java语言为例,深入探讨了位掩码在权限控制中的经典
实现
,并详解了如何利用位运算技巧
进
行算法优化与性能提升,例如通过 `(n & (n-1))` 快
操作系统文件管理:从FCB到inode,深入理解文件系统核心原理与实战
文件系统是操作系统中负责数据持久化存储的核心组件,它定义了数据在存储设备上的组织、管理与访问方式。其核心原理在于通过高效的数据结构(如FCB、inode)管理文件元数据,并通过物理结构(如连续、链接、索引分配)组织文件数据块,以
实现
数据的快速定位与读写。这一技术价值在于为用户和应用程序提供了统一、透明且可靠的文件访问接口,极大简化了数据存储的复杂性。在应用场景上,无论是个人电脑的文档管理、服务器的大规模数据存储,还是嵌入式设备的配置保存,都深度依赖文件系统。本文聚焦于文件管理的演
进
,深入解析了从传统的文件控
C++ 语言
65,213
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章