陈柏凉 2021-12-15 14:06 采纳率: 86.7%
浏览 30
已结题

关于#ASCII#的问题,如何解决?


#include <stdio.h>

int main() {

    char a = '2',
         b = '5';

    printf("%d\n", a * b);
    printf("%c", a * b);


    return 0;
}

输出的结果是2650 和Z,2650我理解,但是这个Z是怎么来的?求解答。

  • 写回答

2条回答 默认 最新

  • 书山客 2021-12-15 14:21
    关注

    img

    img

    通过二进制乘法可以计算出字符2的二进制00110010乘字符5的二进制00110101得到的结果是1010 0101 1010,由于系统对每个字符只能提供8位来进行存储因此前面超出的部分省略只剩下了后8位刚好是字符Z

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

报告相同问题?

问题事件

  • 系统已结题 12月23日
  • 已采纳回答 12月15日
  • 创建了问题 12月15日

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题