小说网 找小说 无限小说 烟雨红尘 幻想小说 酷文学 深夜书屋

有两个指针pa,pb分别指向有两个数,a,b,请写一个函数交换两个指针的指向,也就是让pa指向b,让pb指向a

题目:有两个指针pa,pb分别指向有两个数,a,b,请写一个函数交换两个指针的指向,也就是让pa指向b,让pb指向a,具体实现如下:

#include<stdlib.h>
#include<stdio.h>

int swap_ptr(int ** pA, int ** pB)
{
    if (pA == NULL || pB == NULL)
    {
        return 0;
    }
    int * pTemp = *pA;
    *pA = *pB;
    *pB = pTemp;
    return 1;
}

int main()
{
    int a = 3;
    int b = 2;
    int * pA = &a;
    int * pB = &b;
    printf("pA:%p,pB:%p,*pA=%d,*pB=%d\n", pA, pB, *pA, *pB);
    if (swap_ptr(&pA, &pB) == 0)
    {
        printf("交换失败.\n");
    }
    else
    {
        printf("pA:%p,pB:%p,*pA=%d,*pB=%d\n", pA, pB, *pA, *pB);
    }
    system("pause");
    return 0;
}
运行效果如图1所示:

图1 运行效果


posted on 2014-09-14 23:43  牛栏山1  阅读(137)  评论(0编辑  收藏  举报

导航