如何判断8个位组成的字节型数据中只有一位是1,
其他是0,如01000000,用最简单的方法实现。
我考虑用移位判断,但是这样也不方便,那位高手有
最简单的方法,大家来谈谈

解决方案 »

  1.   

    char x=1;
    bool iso = false;
    do
    {
      if (x == m){iso=true; break;}   
    }while ((x*=2)<=256);
      

  2.   

    我在C++ Primer 中看到有一个bitset类一个成员函数count(),得到含有1的
    个数,书上说要包括文件#include <bitset>,但是在vc中编译时候报找不到bitset
    ,谁能告诉我在MFC中如何使用这个类呢?这是个标准C++的类
      

  3.   

    你加入命名空间
    using namespace std.
    了吗
      

  4.   

    如何在MFC中使用C++的类,如string 啊,谁能相告正确就给分
      

  5.   

    include <string.h>,在VC6下,别忘了.h
      

  6.   

    bool test(unsigned char ctest)
    {
    switch(ctest)
    {
    case 1:
    case 2:
    case 4:
    case 8:
    case 16:
    case 32:
    case 64:
    case 128:
    return true;
    default:
    return false;
    }
    }
      

  7.   

    我用了C++的bitset类,它有个count(),可以得到含1的个数,
    我在包含头文件的时候,我找到源文件是一个叫BITSET的咚咚,
    不知道为什么那是一个什么文件,它好像是个模板类,但是为什么
    不是 .H 或者 .CPP 呢
      

  8.   

    stl标准就是这么定的,没有为什么,模板类不需要cpp文件,具体原因嘛偶也说不清楚,主要对那个编译器原理不是太清楚,跟编译有点关系,自己查资料吧,