C# int和uint类型学习

C#中的int与uint类型详解及默认值
本文详细介绍了C#中的int和uint整数类型,包括它们的内存占用、范围、正负数表示以及int的默认值。通过示例展示了如何在代码中使用这些类型。

在C#中,使用int表示整数类型,对应于.NET的System.Int32结构;

C#中的int类型占4字节(4*8=32位)内存空间,其范围从-2,147,483,648 到 2,147,483,647;

int类型是默认的整数类型,并且默认值是0;

uint类型也是整数类型,占4字节(32位)内存空间,范围是0-4294967295之间的正整数,对应于.NET的System.UInt32结构;

uint只能用来存储正的整数,+表示正数,可以省略,所以uint也称为无符号int整数;

Int32是结构,见此,

 

    System 命名空间 | Microsoft Learn

示例, 

using System;
 
namespace myprog
{
    class test
    {
        static void Main(string[] args)
        {
            int num1 = 9999;
            int num2 = -9999;

            uint num3 = 999;
            uint num4 = +999;

            Console.WriteLine(num1+num2);
            Console.WriteLine(num3+num4);
            Console.ReadKey();
        }
    }
}

 构建运行如下;

 下面来看一下这句话,int类型的默认值是0;

如果定义一个int类型,

    int num5;

不赋值,然后直接输出,将出现下图错误,

根据微软资料,赋默认值使用 int num5 = default(int); 如下,

C#类型的默认值见此, 

C# 类型的默认值 - C# 参考 | Microsoft Learn

intuint存在以下区别: - **符号属性**:int是有符号整数类型,能表示正、负零;而uint是一种无符号整数类型,只能表示零正整数[^1][^2]。 - **取值范围**:int类型的取值范围包含负数正数,例如在32位系统中,int通常是32位,其取值范围是 -2147483648 到 2147483647;uint类型长度取决于CPU,如果是32位CPU就是4个字节,如果是64位就是8个字节,在32位系统中,uint的取值范围是 0 到 4294967295[^2]。 - **使用场景**:由于日常使用正负数字的情况较多,所以int更为常用;而uint适用于只需要表示正数的场景,如表示数组的索引、对象的数量等。当需要使用一个很大的正数时,uint可能更合适,但要注意其最大值会因机器不同而改变[^1]。 - **数学运算边界**:无符号整形的数学运算与int基本相同,但需要注意边界问题。例如,对于UInt8类型,其最大值是255,若进行超过该范围的运算,结果可能不符合预期[^3]。 以下是一个简单的C#代码示例,展示intuint的取值范围: ```csharp using System; class Program { static void Main() { // 计算int类型的最大值与最小值 int a = 1, sum = 0; for (int i = 0; i <= 30; i++) { sum += a; a *= 2; } Console.WriteLine("int类型的最大值为:" + sum); // 结果为2147483647 sum++; Console.WriteLine("int类型的最小值为:" + sum); // 结果为-2147483648 // uint类型的最大值 uint uintMax = uint.MaxValue; Console.WriteLine("uint类型的最大值为:" + uintMax); // 结果为4294967295 } } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值