目前我有脚本将数值打印成位,例如
print((short) 1);
我得到一个值00000001
,但是我怎样才能得到这个值00000001 00000000
,如果我打印print((int) 1);
我得到一个值00000001 00000000 00000000 00000000
。这是我的代码:
void printbyte(unsigned char x)
{
for (int i = 0; i < 8; i++)
{
if (x & 0x80) cout << 1;
else cout << 0;
x = x << 1;
}
cout << endl;
}
template <typename T>
void print (T A)
{
unsigned char *p = (unsigned char *) &A;
printbyte(*p);
}
int main()
{
print((short) 1);
system("pause");
return 0;
}