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

c++指针实现两个数交换

作者:野牛程序员:2023-07-02 07:23:16 C++阅读 2915

在C++中,可以使用指针来实现两个数的交换。以下是一个示例代码:

#include <iostream>

void swap(int* a, int* b) {
    int temp = *a;
    *a = *b;
    *b = temp;
}

int main() {
    int num1 = 5;
    int num2 = 10;

    std::cout << "Before swap: num1 = " << num1 << ", num2 = " << num2 << std::endl;

    // 传递指针给 swap 函数
    swap(&num1, &num2);

    std::cout << "After swap: num1 = " << num1 << ", num2 = " << num2 << std::endl;

    return 0;
}

在这个例子中,我们定义了一个 swap 函数,它接受两个整数指针作为参数。在函数内部,我们使用一个临时变量 temp 来保存 a 指针所指向的值,然后将 a 指针指向 b 指针所指向的值,最后将 b 指针指向 temp。这样就完成了两个数的交换。

main 函数中,我们声明了两个整数变量 num1num2,并给它们初始化为 5 和 10。然后我们调用 swap 函数,将 num1num2 的地址传递给函数。最后,我们输出交换后的结果。

输出应该是:

Before swap: num1 = 5, num2 = 10
After swap: num1 = 10, num2 = 5

请注意,在调用 swap 函数时,我们使用了 & 运算符来获取变量的地址,并将地址传递给函数。在函数内部,我们使用 * 运算符来访问指针所指向的值。这样可以通过指针来修改变量的值,从而实现交换。

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

最新推荐

热门点击