C#中如何将int转成Uint 例如 int i=-34037794 怎么转换成 无符号的Uint 型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中如何将int转成Uint 例如 int i=-34037794 怎么转换成 无符号的Uint 型相关的知识,希望对你有一定的参考价值。

通过强制转换将int类型转换成uint。例如
// 定义一个int类型变量x
int x = -1;
// 将int强制转换成uint
uint u = (uint)x;
// 输出结果
Console.WriteLine("x=0 u=1", x, u);
参考技术A 里面有符号啊,转换之后根本没有意义。要看你想按照什么原则转换了。 参考技术B i=(uint)Math.Abs();//取绝对值,再作类型转换追问

我有个IC卡的系统
IC卡的ID是4260929502,但是在IC卡系统中ID却是 -34037794
我询问了IC卡系统的技术
技术说 -34037794 是int型,只要把int型转成Uint型,就会还原成4260929502
我按照你的方法,只是还原成了34037794

追答

那就把Math.Abs()去掉
直接(uint)i;
或者Conver.ToUint(i);

追问

用“(uint)i” 这个方法可以达到我的目的
Conver.ToUint(i); 这个方法我是按照下面的代码写的

int i = -34037794;
uint ui=Convert.ToUInt32(i);
Response.Write(ui);

提示“Value was either too large or too small for a UInt32.”这个错误

本回答被提问者采纳
参考技术C uint.Parse(i);

以上是关于C#中如何将int转成Uint 例如 int i=-34037794 怎么转换成 无符号的Uint 型的主要内容,如果未能解决你的问题,请参考以下文章

C#中怎么将string转换成int型

c# List<int[]> 如何转成 string?

C#如何把Int32转换为UInt32。

如何使用 swig 从`unsigned int *`返回`uint []`

将 uint 写为 Hex 而不是 Int [重复]

为啥 C# 中的“int[] 是 uint[] == true”