theman23 2022-12-01 11:52 采纳率: 50%
浏览 55
已结题

c# int类型计算超过最大值,是怎么处理的?

我在程序里运行如下代码


int  a= 255;
//二进制是 1111-1111

a = a * 256; 
//a=65280
//二进制是 1111-1111-0000-0000

a = a * 256;
 //a=16,711,680
//二进制是 1111-1111-0000-0000-0000-0000

a = a * 256; 
//a= -16777216
//二进制是 1111-1111-0000-0000-0000-0000-0000-0000

请问第4步 a的值超过32位之后,C#是如何算出 -16777216 这个值的?

  • 写回答

1条回答 默认 最新

  • ·星辰大海 2022-12-01 15:45
    关注

    用数组存储进行大数存储

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月13日
  • 已采纳回答 12月5日
  • 创建了问题 12月1日