Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#中的short和ushort有什么区别?_C#_Word_Ushort - Fatal编程技术网

C#中的short和ushort有什么区别?

C#中的short和ushort有什么区别?,c#,word,ushort,C#,Word,Ushort,C#中的单词short和ushort有什么区别?它们都是16位 C#没有word类型。如果您的意思是short或Int16,区别在于ushort是无符号的 short可以是从-32768到32767的任意值,而ushort可以是从0到65535。它们具有相同的总范围,使用相同的位数,但以不同的方式进行解释,并且具有不同的最大值/最小值 澄清:字是一个通用的计算机科学术语,通常用于指CPU在一次操作中可以处理的最大的一组位。因此,如果您的CPU(和操作系统)是32位的,那么单词就是Int32或UI

C#中的单词
short
ushort
有什么区别?它们都是16位

C#没有
word
类型。如果您的意思是
short
Int16
,区别在于
ushort
是无符号的

short
可以是从
-32768
32767
的任意值,而
ushort
可以是从
0
65535
。它们具有相同的总范围,使用相同的位数,但以不同的方式进行解释,并且具有不同的最大值/最小值

澄清:字是一个通用的计算机科学术语,通常用于指CPU在一次操作中可以处理的最大的一组位。因此,如果您的CPU(和操作系统)是32位的,那么单词就是
Int32
UInt32
(C:
int
/
uint
)。如果您使用的是64位CPU/OS,则单词实际上是
Int64/UInt64
(C:
long
/
ulong
)。术语“字”通常仅指变量的位大小,而不是它在程序中的实际解释方式。

a(机器)字是处理器寄存器的本机大小。它通常是C用作
int
数据类型的大小。在C#中,数据类型具有固定的大小,并且不依赖于处理器体系结构

在英特尔汇编语言中,
WORD
数据类型的意思是16位,
DWORD
(双字)是32位,
QWORD
(四字)是64位。Windows API中也使用了具有相同含义的
单词
类型


所以,
WORD
数据类型对应于C#type
ushort

啊,谢谢,我想我刚才读的课只是从概念上讲的,我知道实际上有一个词类型!此外,一种语言的类型可以有多个名称。例如,在C语言中,
int
long
int32\t
在某些实现中是相同的。@Adam:我添加了一个说明,我认为这可能会有所帮助。“字”是指一组固定大小的位;然而,这个词可能有许多不同的解释方式,每一种都在一种语言中形成一种类型(例如
int
uint
)。@Zarel:是的,没错。Irc、C++和c通常是TyPulf<代码> Word < /C> >作为代码>未签名的int ,因此在这种情况下,它相当于C<代码> uint < /C>。但是,C#中没有这样的typedef,您必须显式指定
[u]short/int/long
,这些都是CLR结构的别名
[u]Int16/Int32/Int64
。不,字是16位。第一个版本的Windows运行在16位CPU上。