这段代码中的“ if block”如何工作?

时间:2019-11-05 14:09:08

标签: c++

请考虑以下代码:

#include <iostream>

using std::cin;
using std::cout;
using std::endl;

int main() {
    int a, b;
    cout << "Enter two integer: ";
    cin >> a >> b;

    if (a > b) {
        int temp = a;
        a = b;
        b = temp;
    }
    cout << a << "<=" << b << endl;
}

上面的代码产生两个插入数字中的最小值。谁能解释if块如何工作?

1 个答案:

答案 0 :(得分:6)

这是交换两个数字的惯用方式。

有更有效的方法:改用std::swap进行开发。

(语句int temp=a;将变量temp设置为a的值。语句a=b;a设置为{{1}的值}。最后,bb=temp;的{​​{1}}设置为b的原始值,因此,总体效果是交换temp和{ {1}}。)