C#如何把Int32转换为UInt32。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#如何把Int32转换为UInt32。相关的知识,希望对你有一定的参考价值。

如果是负数,则返回补码。

    强制转换即可, UInt32 myuint32 = (UInt32)myint32;

    示例

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2

    class Program
    
        static void Main(string[] args)
        
            Int32 myint32 = 18;
            UInt32 myuint32 = (UInt32)myint32;

            Console.WriteLine("0,1", myint32, myuint32);

            Console.Read();
        
    

3. 结果是 18,18


负数求补码的方法如下:

(这里说明一下 Int32类型的负数 被 强制转换成 UInt32后就变成正数了)

1. 其绝对值取反

2. 加1

在C#里用 Convert.ToString(负数,2)就可以得到负数的补码


示例代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2

    class Program
    
        static void Main(string[] args)
        
            Int32 myint32 = -18;
            if (myint32 < 0)
                Console.WriteLine(Convert.ToString(myint32,2));

            Console.Read();
        
    

运行结果如下:

参考技术A 是的

以上是关于C#如何把Int32转换为UInt32。的主要内容,如果未能解决你的问题,请参考以下文章

c# 中如何把 string 类型如何转换为uint类型啊?

C# call Win32 api时,-1如何转换为DWORD

matlab强制转换uint16转int16

32位浮点数二进制转换为int32

C#如何把INT类型转换为方法参数对应的枚举类型?怎么强制转换?

uint和int的区别