c# - ist SHORT-Datentyp oder ist es immer noch INT?
Ich bin dabei einige Einstufungs-und ich bin mir nicht sicher:
INT ist ein primitiver Datentyp mit dem Schlüsselwort "int"
Aber ich verwenden kann, Int16,Int32 oder Int64 - ich weiß, C# hat seinen eigenen Namen für Sie. Aber sind jene Datentypen, wie gut oder ist es immer noch INT? Und vor allem, können wir sagen, "kurz" ist ein INT16 Datentyp oder ein Datentyp?
Danke 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
In C#, die folgenden Dinge sind immer wahr:
short
==Int16
ushort
==UInt16
int
==Int32
uint
==UInt32
long
==Int64
ulong
==UInt64
Beide Versionen sind Datentypen. Alle der oben genannten sind die ganzen zahlen in verschiedenen Längen und signiert-ness.
Der Hauptunterschied zwischen den beiden Versionen (soweit ich weiß), ist, was Farbe die Sie werden hervorgehoben, wie in Visual Studio.
Int32
, aber nichtint
.typeof(int)
ist Int32, und es wird zeigen, wie solche in stack-traces, etc. So ist es doch gut zu wissen.int
als Namen, die Sie gerade brauchen, um das Präfix es mit dem @ - zum Beispiel:int @int = 0;
. Der name ist nochint
. Ich würde nicht empfehlen, dies aber nicht 🙂short
ist ein Datentyp, der als Vertreter der 16-bit-Ganzzahlen (1, um unterint
(32-bit).Int16
ist in der Tat auch ein Datentyp und ist gleichbedeutend mitshort
. Das ist,gibt auch eine
short
, wie:Gleiche geht auch mit
Int32
fürint
undInt64
fürlong
.In C#
int
ist nur einen kürzeren Weg zu sagen: System.Int32.In .NET, auch die primitiven Datentypen sind eigentlich Objekte (abgeleitet von System.Objekt).
Also ein int in C# = eine ganze Zahl im VB.Net = System.Int32.
gibt es ein Diagramm, in dem alle die .NET-Datentypen hier: http://msdn.microsoft.com/en-us/library/47zceaw7%28VS.71%29.aspx
Dies ist Teil der .NET Common Type System ermöglicht eine nahtlose Interoperabilität zwischen .NET-Sprachen.
System.Object
, so können Sie immer dort eingesetzt, wo einObject
erforderlich ist. Und ja, das bedeutet Sie erhalten automatisch boxed, mit der boxed version, explizit abgeleitet ausObject
.Was noch nicht erwähnt wurde, die in keine der anderen Antworten ist der Wert, der Typ
System.IntPtr
, deren bit-Breite Plattform-spezifisch; z.B. auf einer 32-bit-system, es ist 32 bit breit, während Sie auf einem 64-bit-system, es ist 64 bit breit.Dass gesagt wird, von allen, die ich sammeln kann, diese Art ist nicht dazu gedacht, um tatsächlich verwendet werden, anstelle von einem der anderen
int
Arten; seine hauptsächliche Verwendung liegt wahrscheinlich mit P/Invoke-ing die zugrunde liegende system-API, wo es normalerweise verwendet für das halten Zeiger.