一、整型类型

C#中定义了8中整数类型:字节型(byte)、无符号字节型(ubyte)、短整型(short)、无符号短整型(ushort)、整型(int)、无 符号整型(uint)、长整型(long)、无符号长整型(ulong)。划分依据是该类型的变量在内存中所占的位数。

C#中每个整数类型都对应于.NET类库中定义的一个结构,这些结构在程序集System中定义。上述结构均提供两个基本属性:MinValue和MaxValue,分别表示类型的最小值和最大值。

数据类型 说明 取值范围 对应于System程序集中的结构
sbyte 有符号8位整数 -128~127  SByte
 byte  无符号8位整数 0~255  Byte
 short  有符号16位整数  -32768~32767  Int16
 ushort  无符号16位整数  0~65535  UInt16
 int  有符号32位整数  -2147483648-2147483647  Int32
 uint  无符号32位整数  0~4294967295  UInt32
 long  有符号64位整数  -9223372036854775808~9223372036854775807  Int64
 ulong  无符号64位整数  0~18446744073709551615  UInt64

整数取值范围代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace IntegerRange
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("整数类型的取值范围:");
// sbyte
Console.Write("SByte:\t");
Console.Write(SByte.MinValue);
Console.Write("~");
Console.WriteLine(SByte.MaxValue); // byte
Console.Write("Byte:\t");
Console.Write(Byte.MinValue);
Console.Write("~");
Console.WriteLine(Byte.MaxValue); // short
Console.Write("Int16:\t");
Console.Write(Int16.MinValue);
Console.Write("~");
Console.WriteLine(Int16.MaxValue); // ushort
Console.Write("UInt16:\t");
Console.Write(UInt16.MinValue);
Console.Write("~");
Console.WriteLine(UInt16.MaxValue); // int
Console.Write("Int32:\t");
Console.Write(Int32.MinValue);
Console.Write("~");
Console.WriteLine(Int32.MaxValue); // uint
Console.Write("UInt32:\t");
Console.Write(UInt32.MinValue);
Console.Write("~");
Console.WriteLine(UInt32.MaxValue); // long
Console.Write("Int64:\t");
Console.Write(Int64.MinValue);
Console.Write("~");
Console.WriteLine(Int64.MaxValue); // ulong
Console.Write("UInt64:\t");
Console.Write(UInt64.MinValue);
Console.Write("~");
Console.WriteLine(UInt64.MaxValue); Console.WriteLine();
}
}
}

执行结果:

整数类型的取值范围:
SByte: -128~127
Byte: 0~255
Int16: -32768~32767
UInt16: 0~65535
Int32: -2147483648~2147483647
UInt32: 0~4294967295
Int64: -9223372036854775808~9223372036854775807
UInt64: 0~18446744073709551615 请按任意键继续. . .

如果类型取值超出了取值范围,程序在运行时就会发生溢出。

Byte溢出代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace IntegrateOverflow
{
class Program
{
static void Main(string[] args)
{
byte b = 100;
b = (byte)(b + 200); // 溢出 Console.WriteLine(b);
}
}
}

执行结果:

44
请按任意键继续. . .

二、源代码

IntegerRange.rar

IntegrateOverflow.rar

感谢分享,  这个类型所占的数字范围   在其他编程语言里面似乎也是相似或者通用的

c#中的整形类型的更多相关文章

  1. 浅析C语言中的整形类型

    在C语言中,可以把 字符型.短整形.整形.长整形都看作是整形,同属于整形家族这个大类型. 这些类型的大小,默认是否有符号等一些知识点较零散,较容易混淆,所以特地整理如下.   一 类型存储字节长度说明 ...

  2. java程序中默认整形值常量是什么类型的?如何区分不同类型的整型数值常量?

    java程序中默认整形值常量是什么类型的?如何区分不同类型的整型数值常量? 整数值默认就是int类型,只有在数值常量后面加“L”或“l”才表明该常量是long型

  3. Python中内置数据类型list,tuple,dict,set的区别和用法

    Python中内置数据类型list,tuple,dict,set的区别和用法 Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, ...

  4. Java中的枚举类型详解

    枚举类型介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常量的定义 ...

  5. object-c中的BOOL类型

    object-c中的布尔类型比C语言中的bool类型早了10年,它具有YES和NO两种值.在object-c中的布尔类型BOOL实际上是一种带符号的字符类型(signed char),它使用的空间是1 ...

  6. Mysql中的一些类型

    列类型--整数类型Tinyint:迷你整形 一个字节=8位 最大能表示的数值是0-255 实际区间 -128~127Smallint:小整形 两个字节 能表示0-65535Mediumint:中整型 ...

  7. Entity Framework 教程——Entity Framework中的实体类型

    Entity Framework中的实体类型 : 在之前的章节中我们介绍过从已有的数据库中创建EDM,它包含数据库中每个表所对应的实体.在EF 5.0/6.0中,存在POCO 实体和动态代理实体两种. ...

  8. 向mysql中插入Date类型的数据

    先看数据库表的定义 date字段为sql.date类型.我要向其中插入指定的日期和当前日期. 一.插入当前日期 思路:先获取当前系统,在将当前系统时间转换成sql类型的时间,然后插入数据库.代码如下 ...

  9. 在文件夹中 的指定类型文件中 查找字符串(CodeBlocks+GCC编译,控制台程序,仅能在Windows上运行)

    说明: 程序使用 io.h 中的 _findfirst 和 _findnext 函数遍历文件夹,故而程序只能在 Windows 下使用. 程序遍历当前文件夹,对其中的文件夹执行递归遍历.同时检查遍历到 ...

随机推荐

  1. HDU 2196 树形DP Computer

    题目链接:  HDU 2196 Computer 分析:   先从任意一点开始, 求出它到其它点的最大距离, 然后以该点为中心更新它的邻点, 再用被更新的点去更新邻点......依此递推 ! 代码: ...

  2. 创业公司求IOS、Android攻城狮一枚

    地点:北京CBD附近(地铁1号线大望路) 魅力值:送珍贵期权 你要会:       1. IOS或者Android开发       2.可以处理类似微视/秒拍的视频录制功能       3.熟悉jso ...

  3. Java中PreparedStatement和Statement的用法区别(转)

    1. PreparedStatement接口继承Statement, PreparedStatement 实例包含已编译的 SQL 语句,所以其执行速度要快于 Statement 对象.   2.作为 ...

  4. Linux shell的&&和||--转载

    Linux shell的&&和||   shell 在执行某个命令的时候,会返回一个返回值,该返回值保存在 shell 变量 $? 中.当 $? == 0 时,表示执行成功:当 $? ...

  5. 不一样的风格,C#的lambda表达式

    下面贴出代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using S ...

  6. AS3性能及Flex-Formatting设置问题

    1.支持Vector 2.for each in更是从Flash Player 9 3.Flash原生的bitmap.encode 4.如打开位图缓存:使用bitmapData.lock:把bitma ...

  7. C 函数指针数组

    名字有点绕口,其实更应该翻译为指针函数数组. 记录下对Head-First C这一节的理解,几乎每天班车上都会咪两眼,几乎每次都是看不懂,敲一敲的时候才有些明白. 通俗点讲,这功能解决的是,具有同种签 ...

  8. Objective-C 内存管理与高级环境编程 阅读分享

    常用的调试私有API uintptr_t objc_rootRetainCount(id obj) _objc_autoreleasePoolPrint();//查看自动释放池中的对象 LLVM cl ...

  9. 【锋利的jQuery】学习笔记03

    第三章 jQuery中的DOM操作 一.DOM操作的分类 DOM(document object model)是一种与浏览器.平台.语言无关的接口,使用该接口可以访问页面中的·所有组件.DOM的操作可 ...

  10. js--小结②