他们移动数据周围的块

本文深入探讨了C++中的sizeof运算符如何用于确定不同类型的数据大小,并通过示例展示了如何使用比较运算符来进行数值判断。此外,文章还提到了浮点数比较时可能出现的误差问题。
如果您使用的是不同类型的机器,或不同的编译器,您的结果可能会有所不同。注意,你不能把sizeof void类型,因为它没有大小(这样做将导致一个编译错误)。
如果你想知道什么是在上面的程序,它是一个特殊的符号,插入一个标签(在例子中,我们使用它来调整输出列)。当我们谈论有关字符数据类型时,我们将覆盖'吨'和其他特殊符号。
有趣的是,sizeof运算符是C++中的一个词,而不是一个符号只有三大运营商。另一个是新的,删除。

你也可以使用sizeof运算符在变量名:

1
2
    int x;
    cout << "x is " << sizeof(x) << " bytes"<<endl;
x is 4 bytes

计算机工作的二进制位(位)移动。然而,大多数的计算机都不工作与个人的位-相反,他们移动数据周围的块。这个词块大小被称为“词”。通常,当我们谈到一台机器的时候,我们会说一个字的大小。因此,32位的机器有一个32位的字大小,这意味着它的信息围绕32位的时间。
典型地,现代计算机用一个词来称呼记忆。用一个32位的话,这意味着大约有32个2(40亿)的独特的内存地址,可以解决。这就是为什么32位机一般不会使用超过4GB的内存。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
 
int main()
{
    std::cout << "Enter an integer: ";
    int x;
    std::cin >> x;
 
    std::cout << "Enter another integer: ";
    int y;
    std::cin >> y;
 
    if (x == y)
        std::cout << x << " equals " << y << "\n";
    if (x != y)
        std::cout << x << " does not equal " << y << "\n";
    if (x > y)
        std::cout << x << " is greater than " << y << "\n";
    if (x < y)
        std::cout << x << " is less than " << y << "\n";
    if (x >= y)
        std::cout << x << " is greater than or equal to " << y << "\n";
    if (x <= y)
        std::cout << x << " is less than or equal to " << y << "\n";
 
    return 0;
}

当比较整数时,这些运算符是非常简单的。
浮点值比较
直接比较浮点值,使用这些操作符是危险的。这是因为浮点运算数中的小的进位数可能会导致意外的结果。我们讨论了在第2.5节中详细讨论的四舍五入-浮点数。
这里的一个例子的四舍五入错误造成意想不到的结果



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值