文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>指针应用

指针应用

时间:2010-05-06  来源:sjtlqy

#include <stdio.h>
int main()
{
    int x[] = {10, 20, 30};
    int *px = x;
   
    printf("%d,", ++*px);  //11,10
    printf("%d\n", *px);
   
    px = x;
    printf("%d,", (*px)++);//11,10
    printf("%d\n", *px);
   
    px = x;
    printf("%d,", *px++);21,21
    printf("%d\n", *px);
   
    px = x;
    printf("%d,", *++px);20,20
    printf("%d\n", *px);
   
    return 0;
}

刚又仔细确认了下,*和++两个运算符的优先级相同,而且都是自右向左方向结合
假如p是一个整形指针变量 int *p
*p++相当于*(p++)
++*p相当于++(*p)
*++p相当于*(++p)
自己复习一下基础,同时分享出来,希望对大家有所帮助

easy:
++*px = ++(*px) = 11
*px = 11
此时数组变为:x[] = {11, 20,  30}

(*px)++ = 11,  数组变为: x[] = {12, 20, 30}
*px = 12

*px++ = *(px++) = 12, 不是20
*px = 20

*++px = *(++px) = 20
*px = 20

所以答案是:
11, 11
11, 12
12, 20
20, 20
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载