如何将负数转换成正数由| =运算符在C#中?

如何将负数转换成正数由| =运算符在C#中?,第1张

概述我们都知道Int32的最高位定义了它的符号. 1表示它是负数,0表示它是正的(可能反转).可以通过更改其最高位将负数转换为正数吗? 我尝试使用以下代码: i |= Int32.MaxValue; 但它不行. 如果你只是寻找一个有点这样做的方式(例如面试问题等),你需要否定数字(按位)并添加1: int x = -13;int positiveX = ~x + 1; 如果正面或负面,则会翻转标志. 我们都知道Int32的最高位定义了它的符号. 1表示它是负数,0表示它是正的(可能反转).可以通过更改其最高位将负数转换为正数吗?

我尝试使用以下代码:

i |= Int32.MaxValue;

但它不行.

解决方法 如果你只是寻找一个有点这样做的方式(例如面试问题等),你需要否定数字(按位)并添加1:
int x = -13;int positiveX = ~x + 1;

如果正面或负面,则会翻转标志.作为一个小小的注意事项,如果x是int.MinValue,那么这不会起作用,因为负的范围比正的范围多一个.

当然,在现实世界的代码我只是使用Math.Abs​​()已经提到…

总结

以上是内存溢出为你收集整理的如何将负数转换成正数由| =运算符在C#中?全部内容,希望文章能够帮你解决如何将负数转换成正数由| =运算符在C#中?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1236592.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存