我刚刚开始使用C++(字面意思是我的第二天),并且我被分配来计算各种数据类型的范围,有符号和无符号.问题是,我的学校的工作方式我不会到数学部分,他教我们另外几个月的公式.他说要从那些已经完成数学课程的人那里得到这些信息,但他们都表示他们会在他们有笔记的家里从事这项工作.所以现在我和谷歌一起留在了黑暗中,而且它的答案是不确定的,所以我问你,堆栈溢出的聪明人.
获取数据类型范围的公式是什么?我发现一个有效但不适用于其他的INT,他希望我们计算的是:char,short,long和long long.他还想要那些4的无符号版本以及INT.
我们已经拥有每种数据类型的位和字节大小.
以下是我的INT范围布局:
printf ("\nThe range of int is: %f\n", pow(2, (sizeof(int) * CHAR_BIT) -1));
Run Code Online (Sandbox Code Playgroud)
Tim*_*lds 22
std::numeric_limits<T>
您可以使用以下函数获取这些限制的实际值:
您可以用适当的类型代替T
,例如signed char
或unsigned char
.
带有N位(使用二进制补码)的带符号数的公式是
带有N位的无符号数的公式是
char
的char
具有N = 8位.让我们用signed char
和验证这些公式unsigned char
.
signed char
unsigned char
归档时间: |
|
查看次数: |
29967 次 |
最近记录: |