使用指针比较整型数据的大小

该C实例是一个比较简单的实例,但是在该实例中,重点介绍了C语言中比较常用的也是容易出错的指针变量,其中包括指针变量的赋值,指针变量的运算等等。该实例实现了通过使用指针变量来比较3个整形数据,使其从小到大排列,实现比较简单,下面附上我的代码:

#include <stdio.h>

/**
 * 通过指针比较三个整数的大小
 * @brief main
 * @return
 */

/**
 * 指针,即为变量的地址;指针变量,即数值为
 * 指向变量地址的变量
 * 指针变量的类型:
 * 对指针变量的类型说明包括3个内容
 *  1:指针类型说明,即定义变量为一个指针变量
 *  2:指针变量名
 *  3:变量值(指针)所指向的变量的数据类型
 * 其一般形式为:
 *  类型说明符 *变量名;
 *  其中,*表示这是一个指针变量,变量名即为定义的指针变量名,
 *  类型说明符表示本指针变量所指向的变量的数据类型
 *
 *  指针变量的赋值:
 *  C中提供了地址运算符"&"来表示变量的地址
 *  要把整型变量a的地址赋予p可以有下面两种方式:
 *  (1)指针变量初始化方法
 *      int a;
 *      int *p = &a;
 *  (2)赋值语句的方法
 *      int a;
 *      int *p
 *      p = &a;
 *
 *  指针变量的元算:
 *  1:指针运算法
 *      (1)取地址运算符&
 *      (2)取内容运算符*
 *  2:指针变量的元算
 *      (1)赋值运算
 *      (2)加减运算符
 */



int main(void)
{
    int x,y,z;  //定义3个int类型的变量
    int *xp = &x, /*定义指针变量xp,并赋值为x的地址,使其指向x*/
        *yp = &y, /*定义指针变量yp,并赋值为y的地址,使yp指向y*/
        *zp = &z; /*定义指针变量zp,并赋值为z的地址,是zp指向z*/

    int t;

    printf("Please input x,y,z:\n");
    scanf("%d%d%d",xp,yp,zp); /* 通过变量的指针,为变量输入值 */

    if(*xp > *yp){  /*通过指向变量的指针引用变量的值*/
        t = *xp;
        *xp = *yp;
        *yp = t;
    }

    if(*xp > *zp){
        t = *xp;
        *xp = *zp;
        *zp = t;
    }

    if(*yp > *zp){
        t = *yp;
        *yp = *zp;
        *zp = t;
    }

    printf("x = %d,y = %d,z = %d\n",x,y,z);
    return 0;

    /** * 与指针有关的类型: * int i; //定义整型变量i * int *p; //p为指向整型数据的指针变量 * int a[n]; //定义数组a,他有n个元素 * int *p[n]; //定义指针数组p,他有n个指向整型数据的指针元素组成 * int (*p)[n]; //p为指向n个元素的一维数组的指针变量 * int f(); //f为返回整型函数值的函数 * int *p(); //p为返回一个指针的函数,该指针指向整数型数据 * int (*p)(); //p为指向函数的指针,该函数返回一个整数值 * int **p; //p是一个指针变量,他指向一个指向整型数据的指针变量 */
}

转载于:https://my.oschina.net/u/1051345/blog/416943

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值