无符号整数转成有符号整数为什么无符号整数65535转成有符号的就变成-1了 哪位大侠能详细的讲解下,我要知道的是为什么不是随便给个函数什么的 最好具体帮我分析下 谢谢各位大哥了回答

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/21 17:28:42
无符号整数转成有符号整数为什么无符号整数65535转成有符号的就变成-1了哪位大侠能详细的讲解下,我要知道的是为什么不是随便给个函数什么的最好具体帮我分析下谢谢各位大哥了回答无符号整数转成有符号整数为

无符号整数转成有符号整数为什么无符号整数65535转成有符号的就变成-1了 哪位大侠能详细的讲解下,我要知道的是为什么不是随便给个函数什么的 最好具体帮我分析下 谢谢各位大哥了回答
无符号整数转成有符号整数
为什么无符号整数65535
转成有符号的就变成-1了 哪位大侠能详细的讲解下,我要知道的是为什么不是随便给个函数什么的
最好具体帮我分析下 谢谢各位大哥了
回答的好我再加分

无符号整数转成有符号整数为什么无符号整数65535转成有符号的就变成-1了 哪位大侠能详细的讲解下,我要知道的是为什么不是随便给个函数什么的 最好具体帮我分析下 谢谢各位大哥了回答
无符号整数65535在内存中的二进制表示为 11111111 11111111
此二进制转化为无符号时:2^15 + 2^14 + 2^13 .2^2 + 2^1 + 2^0 = 2^16 - 1 = 65535
但转化为有符号时:-2^15 + 2^14 + 2^13 + 2^12 +.+ 2^2 + 2^1 + 2^0 = -2^15 + (2^15 - 1) = -1