c#中如何将uint值转换成int呢

C#中的uint是无符号整数类型,int是有合适整数类型。两者的取值规模不不异,那么,若何将uint值转换为int呢?

方式/步调

  1. 1

    打开visual studio,建立一个节制台应用程序,本文的所有代码都在Program.cs文件的Main方式中进行演示。起首查看uint无符号整数类型的最大值 uint.MaxValue = 4294967295,最小值 uint.MinValue = 0

  2. 2

    然后在Main方式中利用 int.MaxValue 获得int的最大值,int.MinValue 获得int的最小值。从运行成果来看,int有符号整数类型的最大值 int.MaxValue = 2147483647,最小值 int.MinValue = -2147483648

  3. 3

    从上面两个成果可以看出,uint无符号的意思是,数值只有整数没有负数。int有符号的意思是,数值既有整数还有负数。别的,uint的正数规模比int的正数规模要大一倍

  4. 4

    对于uint值在int规模内的时辰,只需利用 (int)变量 的格局就能转换当作int值了。这种体例是强制转换,对于在规模内的数有用

  5. 5

    对于uint值在int正数规模外的时辰,利用 (int)变量 的格局转化,就会呈现数据溢出,可是程序不会报错,转换后获得的值不是想要的成果

  6. 6

    对于上面这种环境,假设程序中碰到了,还不报错,呈现的问题会让人很费解。假设是银行的存条目,因为多存了一块钱导致数字溢出,酿成了负数,这是绝对无法原谅的。是以,在转换的代码外面加上checked关头字,在转换溢出的时辰就会抛出异常,防止溢出

  7. 7

    除了利用括号int这种强制转换之外,还可以利用下面的体例转换:

        1)int.Parse强制转换,这种体例若是溢出了会直接报错,抛出异常

        2)int.TryParse转换,若是数据溢出了,转换会返回false,也就是转换掉败,不抛出异常

  • 发表于 2019-07-07 17:04
  • 阅读 ( 1313 )
  • 分类:其他类型

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
联系我们:uytrv@hotmail.com 问答工具