打印
[应用相关]

* 和 ++ 操作案例分析

[复制链接]
40|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
OKAKAKO|  楼主 | 2024-8-31 15:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

问:下面的操作会输出什么?为什么?

#include<stdio.h> 

int main(void)
{
    char *ptr = "Linux";
    printf("\n [%c] \n",*ptr++);
    printf("\n [%c] \n",*ptr);

    return 0;
}


答:输出结果应该是这样:
[L] 

[i]

因为“++”和“ * ” 的优先权一样,所以“ * ptr++ ”相当于 “ * (ptr++) ”。即应该先执行 ptr++,然后才是 * ptr,所以操作结果是“L”。第二个结果是“i”。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

197

主题

1308

帖子

3

粉丝