getbinblocksize(a)
#include <iostream>
using namespace std;
#define B_SHIFT 4
int getBinBlockSize(int size)
{
int q = 0;
for ( q= 0; size>0; size >>= 1)
{
q++;
}
return 1 << q;
}
static int getBinBlockSize2(int size)
{
int q;
size = size >> B_SHIFT;
for (q = 0; size; size >>= 1) {
q++;
}
return (1 << (B_SHIFT + q));
}
int _tmain(int argc, _TCHAR* argv[])
{
int a;
cout << "please input a positive integer:";
cin >> a;
cout << getBinBlockSize2(a) << endl;
system("PAUSE");
return 0;
}
浙公网安备 33010602011771号