Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2647033
  • 博文数量: 416
  • 博客积分: 10220
  • 博客等级: 上将
  • 技术积分: 4193
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-15 09:47
文章分类

全部博文(416)

文章存档

2022年(1)

2021年(1)

2020年(1)

2019年(5)

2018年(7)

2017年(6)

2016年(7)

2015年(11)

2014年(1)

2012年(5)

2011年(7)

2010年(35)

2009年(64)

2008年(48)

2007年(177)

2006年(40)

我的朋友

分类: C/C++

2008-06-06 13:11:46

C++   Primer   中提到   bitset   可以用一个字符串来初始化(潘译版   141   页)  
   
  其中举了一个例子  
   
  //   从位置   6   开始,直到字符串结束:   1010101  
  string   bitval("1111110101100011010101");  
  bitset<32>   bitvec6(bitval,   6);   //#1
   
  可是我在   VC.NET   和   g++   得到的结果(cout   <<   bitvec6)都是:  
    00000000000000000101100011010101  
   
  怎么回事?谢过先

string   bitval("1111110101100011010101");  
  bitset<32>   bitvec5(bitval,   6,   4);   //#2
    
  从第6位开始1010101(从末尾开始,0~31位),4个长度(1010),输出结果应该是(000..00(28个0)1010)

参照结果如下::
***************************************************************************
----------123456789
00000000000000000101100011010101  (#1)
----------1111110101100011010101  (source)
----------------0101              (#2)

 
阅读(1336) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~