C#中的Int32和UInt32之间的区别

C#Int32和C#UInt32

在C#中,Int32被称为4字节的有符号整数,它可以存储-2147483648到+2147483647范围之间的两种类型的值,包括负数和正数。

UInt32,它是4个字节的无符号整数,只能存储0到4294967295范围之间的正值。

'Int32'和'UInt32'之间的区别

Int32UInt32
Int32代表有符号整数。UInt32代表无符号整数。
它存储值的能力是-2147483648至+2147483647。该值的存储容量为0到4294967295。
它可以存储负整数和正整数。它只能存储正整数。
它在内存中占用4个字节的空间。它还在内存中占用4字节的空间。
声明语法:
Int32 variable;
声明语法:
UInt32 variable;

示例

在此示例中,为了解释C#中Int32和UInt32之间区别,我们将打印它们的最小值和最大值,同时还声明了两个数组– arr1是有符号整数类型,而arr2是无符号整数类型。根据其容量用相应的负值和正值初始化数组。

using System;
using System.Text;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            //Int32值范围 
            Console.WriteLine("Int32 value capacity...");
            Console.WriteLine("Min: {0}, Max: {1}\n", Int32.MinValue, Int32.MaxValue);

            //UInt32值范围 
            Console.WriteLine("UInt32 value capacity...");
            Console.WriteLine("Min: {0}, Max: {1}\n", UInt32.MinValue, UInt32.MaxValue);

            //Int32数组
            Int32[] arr1 = { -2147483648, 0, 12320009, 2147480000, 2147483647 };
            Console.WriteLine("UInt32 array elements...");
            foreach (Int32 num in arr1)
            {
                Console.WriteLine(num);
            }
            Console.WriteLine();

            //UInt32数组
            UInt32[] arr2 = { 0, 100, 23000, 4294960000, 4294967295 };
            Console.WriteLine("UInt32 array elements...");
            foreach (UInt32 num in arr2)
            {
                Console.WriteLine(num);
            }

            //按ENTER退出
            Console.ReadLine();
        }
    }
}

输出结果

Int32 value capacity...
Min: -2147483648, Max: 2147483647

UInt32 value capacity...
Min: 0, Max: 4294967295

UInt32 array elements...
-2147483648
0
12320009
2147480000
2147483647

UInt32 array elements...
0
100
23000
4294960000
4294967295