C#数据类型 什么是有符号的64位整数和无符号的64位整数

心路独舞 发布于 2015/12/16 17:51
阅读 1K+
收藏 0

C#中,数据类型中存在 有字符和无字符类型整数,eg:什么是有符号的64位整数和无符号的64位整数 


Short:代表有符号的16位整数,范围从-32768 ~ 32767

ushort:代表无符号的16位整数,范围从-32768 ~ 32767

Int:代表有符号的32位整数,范围从-2147483648 ~ 2147483648

uint:代表无符号的32位整数,范围从0 ~ 4294967295

Long:代表有符号的64位整数,范围从-9223372036854775808 ~ 9223372036854775808

Ulong:代表无符号的64位整数,范围从0 ~ 18446744073709551615。


加载中
1
wzugang
wzugang

一、ushort范围是0-65535。

二、无符号64位整数是没有负数的,从0x0000000000000000-0xffffffffffffffff(0x0000000000000000是0,0xffffffffffffffff是64位最大无符号整数),有符号数的64位整数有正数、0和负数组成。0和正数的范围是0x0000000000000000-0x7ffffffffffffffff(0x0000000000000000是0,0x7ffffffffffffffff是64位最大有符号正整数),负数范围0x1000000000000000-0xffffffffffffffff(0x1000000000000000是64位最小有符号负数,0xffffffffffffffff是-1。)

三、C#中各种数据类型之间可以进行转换,例如short a;转ulong b;可以b=(ulong)(long)(short)a;

1
c
c914620529
数据再存储是第一位代表符号,1是负0是正,无符号整数就只能是整数
1
嗜学如命的小蚂蚁
嗜学如命的小蚂蚁

虽然不太会c#,但是这句写错了吧

ushort:代表无符号的16位整数,范围从-32768 ~ 32767

有符号的意思就是可以 “有负号”,就是从负数到正数,因为有负数,所以0到两端的取值范围比较小。

如果程序,不需要考虑负数的话,可以使用无符号,可以将整数的范围扩大基本上一倍

返回顶部
顶部