中易网

C语言十进制转八进制时负数的转法?

答案:2  悬赏:30  
解决时间 2021-04-28 02:17
  • 提问者网友:喜遇你
  • 2021-04-27 16:29
小白求大神解惑。例如下列这个程序,把-7的十进制转成8进制。为何运行后时37777777771 ??这个数字怎么来的 -7的八进制不也是-7吗?
#include

void main()
{
int a=-7;
printf("a1=%o,a2=%5o\n",a,a);
}
最佳答案
  • 二级知识专家网友:最后战士
  • 2021-04-27 17:07
八进制是无符号位的,
-7按unsiged int型输出,十进制是2^32-7=4294967289
按八进制输出就是37777777771
全部回答
  • 1楼网友:许你一世温柔
  • 2021-04-27 17:19
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息