zoukankan      html  css  js  c++  java
  • 交换指针

    1。今天早上突发奇想,复习一下指针交换,由于一时的忘记,准备写到这里,以备以后复习。

      首先指针的交换,必须传地址,而非传值。(你不相信,一会看结果)

    下面小小的函数来实现

    1 void swap(int *a,int *b)
    2 {
    3         int tmp = *a;
    4         *a = *b;
    5         *b = tmp;
    6 }
    View Code

    2.接下来通过一个Demo来进行验证。同时我也打印了内存地址,你一看就明白了。

     1 #include<iostream>
     2 #include<cstdio>
     3 using namespace std;
     4 int main()
     5 {
     6     int x = 12,y = 23;
     7     int *a,*b;  // 指针形式 "int" + "*" +"变量名"
     8     a = &x;
     9     b = &y;       //*a = &x  *b = &y
    10 
    11     printf("%X %X
    ",a,b);
    12     printf("%d %d
    ",*a,*b);
    13     printf("%d %d
    ",x,y);
    14     int t;
    15     t = *a;
    16     *a = *b;
    17     *b = t;
    18 
    19     printf("%X %X
    ",a,b);
    20     printf("%d %d
    ",*a,*b);
    21     printf("%d %d
    ",x,y);
    22 }
    View Code

    如果你懒的打开编辑器,我已经把结果给你运行了,看图:

    好了说明问题了

  • 相关阅读:
    005 HTML+CSS(Class027
    004 HTML+CSS(Class024
    003 HTML+CSS(Class011
    002HTML+CSS(class007-010)
    001HTML+CSS(class001-006)
    021 vue路由vue-router
    020 Vue 脚手架CLI的使用
    019 Vue webpack的使用
    018 vue的watch属性
    017 vue的插槽的使用
  • 原文地址:https://www.cnblogs.com/sxmcACM/p/3760434.html
Copyright © 2011-2022 走看看