• C++基础学习之利用swap函数验证*和&的用法


    *形式的swap函数:

     1 #include<stdio.h>
     2 void swap(int *d1, int *d2) {
     3     int t;
     4     t = *d1;
     5     *d1 = *d2;
     6     *d2 = t;
     7     printf("After swap
    a=%d
    b=%d
    ", *d1, *d2);
     8 }
     9 int main() {
    10     int d1 = 1, d2 = 2;
    11     printf("Before swap
    a=%d
    b=%d
    ", d1,d2);
    12     swap(&d1,&d2);
    13     return 0;
    14 }

    运行结果:

     引用形式的swap函数

     1 #include<stdio.h>
     2 void swap(int &d1, int &d2) {
     3     int t;
     4     t = d1;
     5     d1 = d2;
     6     d2 = t;
     7     printf("After swap
    a=%d
    b=%d
    ", d1, d2);
     8 }
     9 int main() {
    10     int d1 = 1, d2 = 2;
    11     printf("Before swap
    a=%d
    b=%d
    ", d1,d2);
    12     swap(d1,d2);
    13     return 0;
    14 }

    运行结果:

    *d1这种是取得地址,当交换二个数时,他们的值不会变。&d1是引用型,只有数据的使用权,而不能改变数据。

  • 相关阅读:
    【LeetCode】085. Maximal Rectangle
    哈希查找
    堆排序
    归并排序
    希尔排序
    快速排序
    堆区和栈区,malloc和new的区别
    C++基础
    二分查找
    冒泡排序
  • 原文地址:https://www.cnblogs.com/geyuezgh/p/12789226.html
Copyright © 2020-2023  润新知