方方桓桓 2023-06-22 14:06 采纳率: 100%
浏览 26
已结题

输出结果b-a应该是什么,为什么呢?

char a='1',b='2';
printf("%c,",b++);
printf("%d",b-a);

  • 写回答

4条回答 默认 最新

  • Huazie 优质创作者: 编程框架技术领域 2023-06-22 15:49
    关注

    第一个printf 打印一个 字符, b++ 因为 ++ 在后,所以 b++ 这个表达式的值 为 b,即 2,所以 输出 2 这个字符,然后 b 字符 + 1,则 b = ‘3’ 这个字符
    第二个printf 打印一个整数, b - a = ‘3’ - ‘1’ ,即两个字符的ascii码相减,即 51 - 49 = 2
    所以 最终 打印 2,2

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 6月30日
  • 已采纳回答 6月22日
  • 创建了问题 6月22日