簡單指針調着玩

#include <stdio.h>

#include <iostream>

void swap(int **a,int **b){

    int *tp=NULL;

    printf("*a==%lld,*b==%lld\n", *a, *b);

    tp = *a;

    printf("tp==%lld\n", tp);

    *a = *b;

    *b = tp;

    printf("*a==%lld,*b==%lld,tp==%lld,**a==%lld,**b==%lld\n", *a, *b,tp,**a,**b);



}



int main(){

    int a = 1, b = 2;

    printf("main_&a==%lld,main_&b==%lld\n", &a, &b);



    int *p = &a;

    int **pa = &p;

    printf("main_pa==%lld\n", pa);

    int *pp = &b;

    int **pb = &pp;

    printf("main_pb=%lld\n", pb);




    swap(pa, pb);

    printf("after_swap_a==%lld,after_swap_pb==%lld\n", *pa, *pb);

    a = **pa;

    b = **pb;



    printf("---after_swap_a==%lld,after_swap_pb==%lld\n", **pa, **pb);

    printf("%lld,%lld\n", **pa, **pb);



    printf("%d,%d\n", a, b);

    return 0;

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章