当前位置:首页 C++ > 正文

C++中float和int都是32位,为什么表示范围不同?还有long long和int有什么区别?

作者:野牛程序员:2023-05-20 09:39:26 C++阅读 2497

在C++中,floatint都是32位,但是它们的表示范围确实不同。

int是一个带符号整数类型,可以表示整数值,范围通常是从-2^31到2^31-1(约为-2.1 billion到2.1 billion)。

float是一个浮点数类型,可以表示带有小数部分的数值。它遵循IEEE 754标准,使用32位来表示一个浮点数,其中包括符号位、指数位和尾数位。由于这种表示方式,float可以表示更大的范围,但相应地,它会牺牲精度。float的范围大约是从1.17549 x 10^-38到3.40282 x 10^38。

long long是一个带符号整数类型,通常比int更大,占用64位。它的范围通常是从-2^63到2^63-1(约为-9.2 quintillion到9.2 quintillion)。因此,long long可以表示更大的整数值,但相应地,它会占用更多的内存。

综上所述,虽然floatint都是32位,但它们的表示方式和范围不同。而long long则是一个更大的整数类型,占用64位,可以表示更大范围的整数值。

#include <iostream>

int main() {
    int myInt = 10;
    float myFloat = 3.14;
    long long myLongLong = 123456789012345;

    std::cout << "Value of myInt: " << myInt << std::endl;
    std::cout << "Value of myFloat: " << myFloat << std::endl;
    std::cout << "Value of myLongLong: " << myLongLong << std::endl;

    return 0;
}

在上述示例中,我们声明了一个名为myIntint变量,一个名为myFloatfloat变量,以及一个名为myLongLonglong long变量。我们分别赋予它们不同的值。

输出结果:

Value of myInt: 10
Value of myFloat: 3.14
Value of myLongLong: 123456789012345

这个示例展示了intfloat变量的使用。注意到float可以存储小数值(3.14),而int只能存储整数值(10)。

野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击