我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

16进制输出结果时前面出现4个f

n=52145,用16进制输出c^d的结果时前面出现4个f,请问是什么原因和如何解决呢?

#include 
using namespace std;
int main() 
{
    int n,d;
    int c=074120;
    cin>>n;
    d=~n;
    printf("%x",c^d);//预期结果:4c1e,实际结果:ffff4c1e
    return 0;
}

在网上查了一下后,定义了一个unsigned char y,令y=c^d后printf("%x",y),输出结果变为了1e,请问是什么原因,该如何解决呢?

如果你只想输出低16位结果,那么把int改为short

近期文章

  • 怎么在一个非空链表中用尾插法再次插入多个元素?
  • hadoop伪分布式启动不了
  • 一个C语言编程应用举例
  • Arduino 系列串口通信问题
  • PAT-B1031 如何进行修改将乱码消除?(语言-c语言|开发工具-visualstudio)
  • excel 有效数字位数
  • WGS1984坐标下的栅格大小变换
  • 虚拟机,安装系统,一直是这和界面不知道问啥,都是跟着教程来的
  • #c语言#求佬解答,刚刚接触
  • 如何将Zend Framework应用程序部署到PHP Fog?
  • Unable to start web server; nested exception is ..
  • python 停车场收费问题
  • flutter如何配对绑定蓝牙设备?
  • nuxt3 怎么修改端口?
  • 关于#数据库#的问题,如何解决?(语言-java)
  • 怎么把电脑共享文件目录映射到云服务器
  • 语法问题(smali)
  • 具有无穷多最优解的齐次线性方程组一定有非负解吗
  • pywifi模块安装老是报错
  • 无法使用gmail smtp和swift邮件程序发送邮件

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华