我需要知道一个整数是否有32位长(我想知道它是否恰好有32位长(8个十六进制字符)。我该如何在C++中实现这一点?我应该使用十六进制表示还是unsigned int表示?
我的代码如下:
mistream.open("myfile.txt");
if(mistream)
{
for(int i=0; i<longArray; i++)
{
mistream >> hex >> datos[i];
}
}
mistream.close();
其中,mistream是ifstream类型,datos是无符号整型数组
谢谢
<limits.h>
并计算sizeof(int)*CHAR_BIT
或测试INT_MAX/INT_MIN
。 - chux - Reinstate Monicapower(2,31)
和power(2,32)-1
之间,或者其他什么? - chux - Reinstate Monica0x1000'0000
只使用了29位。考虑从你的问题中删除关于8个十六进制字符的备注。 - undefined