Home » C#.Net

Difference between uint, UInt16, UInt32 and UInt64 in C#

C# differences between uint, UInt16, UInt32 and UInt64: Here, we are going to learn what are the differences between uint, UInt16, UInt32 and UInt64 in C#?
Submitted by IncludeHelp, on February 13, 2019

uint, UInt16, UInt32 and UInt64 are used to represent unsigned integers with values ranging based on their capacities/occupied size in the memory. These types work with positive values only. All these types are the same in nature but different based on the value ranges.

Difference between uint, UInt16, UInt32 and UInt64

1) UInt16

  • UInt16 represents 16-bits (2-bytes) unsigned integer.
  • UInt16 occupies 16-bits (2-bytes) space in the memory.
  • As per the 2-bytes data capacity, an UInt16's value capacity is 0 to +65535.

Example:

Consider the code – Here, we are printing required size, type, minimum & maximum value, variable declaration, and assignment of an UInt16.

using System;
using System.Text;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            //printing UInt16 capacity, type, MIN & MAX value
            Console.WriteLine("UInt16 occupies {0} bytes", sizeof(UInt16));
            Console.WriteLine("UInt16 type is: {0}", typeof(UInt16));
            Console.WriteLine("UInt16 MIN value: {0}", UInt16.MinValue);
            Console.WriteLine("UInt16 MAX value: {0}", UInt16.MaxValue);
            Console.WriteLine();

            //UInt16 variables
            UInt16 a = 12345;
            UInt16 b = 65000;
            Console.WriteLine("a = {0}, b = {1}", a, b);

            //hit ENTER to exit
            Console.ReadLine();
        }
    }
}

Output

UInt16 occupies 2 bytes
UInt16 type is: System.UInt16
UInt16 MIN value: 0
UInt16 MAX value: 65535

a = 12345, b = 65000

2) UInt32/uint

uint is an alias of UInt32, so, uint and UInt32 are the same type.

  • UInt32 represents 32-bits (4-bytes) unsigned integer.
  • UInt32 occupies 32-bits (4-bytes) space in the memory.
  • As per the 4-bytes data capacity, an UInt32's value capacity is 0 to +4294967295.

Example:

Consider the code – Here, we are printing required size, type, minimum & maximum value, variable declaration, and assignment of an UInt32 or uint.

using System;
using System.Text;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            //printing UInt32 capacity, type, MIN & MAX value
            Console.WriteLine("UInt32 occupies {0} bytes", sizeof(UInt32));
            Console.WriteLine("UInt32 type is: {0}", typeof(UInt32));
            Console.WriteLine("UInt32 MIN value: {0}", UInt32.MinValue);
            Console.WriteLine("UInt32 MAX value: {0}", UInt32.MaxValue);
            Console.WriteLine();

            //UInt32 variables
            UInt32 a = 289812345;
            UInt32 b = 90909;
            Console.WriteLine("a = {0}, b = {1}", a, b);
            Console.WriteLine();

            //printing uint capacity, type, MIN & MAX value
            Console.WriteLine("uint occupies {0} bytes", sizeof(uint));
            Console.WriteLine("uint type is: {0}", typeof(uint));
            Console.WriteLine("uint MIN value: {0}", uint.MinValue);
            Console.WriteLine("uint MAX value: {0}", uint.MaxValue);
            Console.WriteLine();

            //uint variables
            uint x = 289812345;
            uint y = 90909;
            Console.WriteLine("x = {0}, y = {1}", x, y);

            //hit ENTER to exit
            Console.ReadLine();
        }
    }
}

Output

UInt32 occupies 4 bytes
UInt32 type is: System.UInt32
UInt32 MIN value: 0
UInt32 MAX value: 4294967295

a = 289812345, b = 90909

uint occupies 4 bytes
uint type is: System.UInt32
uint MIN value: 0
uint MAX value: 4294967295

x = 289812345, y = 90909

3) UInt64

  • UInt64 represents 64-bits (8-bytes) unsigned integer.
  • UInt64 occupies 64-bits (8-bytes) space in the memory.
  • As per the 8-bytes data capacity, an UInt64's value capacity is 0to +18446744073709551615.

Example:

Consider the code – Here, we are printing required size, type, minimum & maximum value, variable declaration, and assignment of an UInt64.

using System;
using System.Text;

namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            //printing UInt64 capacity, type, MIN & MAX value
            Console.WriteLine("UInt64 occupies {0} bytes", sizeof(UInt64));
            Console.WriteLine("UInt64 type is: {0}", typeof(UInt64));
            Console.WriteLine("UInt64 MIN value: {0}", UInt64.MinValue);
            Console.WriteLine("UInt64 MAX value: {0}", UInt64.MaxValue);
            Console.WriteLine();

            //UInt64 variables
            UInt64 a = 289818278722345;
            UInt64 b = 98983989;
            Console.WriteLine("a = {0}, b = {1}", a, b);
            Console.WriteLine();

            //hit ENTER to exit
            Console.ReadLine();
        }
    }
}

Output

UInt64 occupies 8 bytes
UInt64 type is: System.UInt64
UInt64 MIN value: 0
UInt64 MAX value: 18446744073709551615

a = 289818278722345, b = 98983989





Comments and Discussions

Ad: Are you a blogger? Join our Blogging forum.
Learn PCB Designing: PCB DESIGNING TUTORIAL




Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing » Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© https://www.includehelp.com some rights reserved.