输出结果为什么是126

wanghb1989 2013-10-14 01:16:51

#include<stdio.h>

int main()
{
char p[1];
p[0]=-130;
printf("%d",p[0]);
}

YY公司的一道选择题
...全文
82 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
wanghb1989 2013-10-14
  • 打赏
  • 举报
回复
引用 1 楼 Idle_Cloud 的回复:
-130的整数二进制是0xffffff7e 把它赋值给char,且都是有符号类型。就剩下后面的了7e 打印出来就是126
谢谢
Carl_CCC 2013-10-14
  • 打赏
  • 举报
回复
-130的整数二进制是0xffffff7e
把它赋值给char,且都是有符号类型。就剩下后面的了7e
打印出来就是126

70,023

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧