| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5425 人关注过本帖
标题:巧用bool数组
只看楼主 加入收藏
zanzan1986
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:100
专家分:140
注 册:2011-2-22
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:11 
巧用bool数组
main()
{
    int i,array;
    array = 0;
    for(i = 0x80000000; i; i>>1)
    {
           array |= i;                     //给数组赋为真
     }
    for(i = 0x80000000; i; i>>1)
    {
         if(array & i) array ^| i;         //如果为真赋为假           
     }
}

这种方法只合适小形数组,呵呵
2012-08-08 20:12
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:5 
数组在哪?

总有那身价贱的人给作业贴回复完整的代码
2012-08-08 20:57
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:15 
他是说这一个数,就是一个长度为 32 的数组。

清一位可以用:
array &= ~i;

反转一位可以用:
array ^= i;


[ 本帖最后由 pangding 于 2012-8-8 21:21 编辑 ]
2012-08-08 21:12
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 3楼 pangding
你认可这种说法吗?

总有那身价贱的人给作业贴回复完整的代码
2012-08-08 21:15
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
回复 4楼 embed_xuel
有些语言里的 bool 数组就是这种方法实现的。个人感觉在 c 语言里这样不是很方便。
2012-08-08 21:17
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
我觉得楼主这种牵强附会的把int型数和数组联系到一起的叫法,只能是误导新手

总有那身价贱的人给作业贴回复完整的代码
2012-08-08 21:39
zanzan1986
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:100
专家分:140
注 册:2011-2-22
收藏
得分:0 
这是我在写一个小程序想出来的,
当是要声明一个bool数组但这个数组下几分支语句中用完就不用了
所以如果声明在函数前面

void ssss(int a)
{
     int i;
     bool s[10];              //声明在这里函数每次调用不管你用不用数组它都在开始就建立数组了
     switc(a)
     {
      case 1:
            break;
      case 2:
            break;
      case 3:
            //在这里需要用到数组但这条语句很少执行的   所以我在这就取个i当数组这样就省了这样的麻烦
            break;
}
2012-08-09 09:31
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
貌似bitvec就是这么搞的……恩,我说的就是std::vector<bool>。

专心编程………
飞燕算法初级群:3996098
我的Blog
2012-08-09 14:32
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
回复 8楼 StarWing83
你是指 bitset?
2012-08-09 14:56
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
以下是引用StarWing83在2012-8-9 14:32:42的发言:

貌似bitvec就是这么搞的……恩,我说的就是std::vector。
又见到大神了
2012-08-09 14:59
快速回复:巧用bool数组
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017454 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved