
C# Numerische Typen (Wie es für Entwickler funktioniert)
In C# sind numerische Typen eine Reihe von Datentypen, die zur Speicherung von Zahlen verwendet werden und in zwei Hauptkategorien unterteilt werden können: Ganzzahltypen und Gleitkommabereichtypen. Jede Kategorie hat ihre eigenen einzigartigen Merkmale und Anwendungsfälle.
Numerische Typen bilden die Grundlage zahlreicher Operationen in C#, von finanziellen und monetären Berechnungen bis hin zu komplexen Algorithmen. Wenn Sie C# meistern möchten, müssen Sie diese Werttypen beherrschen.
Ganzzahlige Datentypen
Ganzzahl-Datentypen werden verwendet, um ganze Zahlen zu speichern, und können entweder vorzeichenbehaftet (fähig, sowohl positive als auch negative Zahlen zu halten) oder vorzeichenlos (fähig, nur positive Zahlen zu halten) sein. Hier ist eine Aufschlüsselung der Ganzzahltypen in C#:
Byte
Das Byte ist der kleinste Ganzzahltyp. Es ist ein vorzeichenloser Typ mit einem Standardwert von 0, der Werte von 0 bis 255 speichern kann.
Sbyte
Das sbyte ist das vorzeichenbehaftete Gegenstück zum byte. Es kann Werte von -128 bis 127 speichern, mit einem Standardwert von 0.
Kurz
Ein short ist eine 16-Bit-vorzeichenbehaftete Ganzzahl. Es hat einen größeren Bereich als das byte und sbyte, von -32.768 bis 32.767, mit einem Standardwert von 0.
Kurz
ushort ist das vorzeichenlose Gegenstück zum short. Es kann Werte von 0 bis 65.535 halten. Sein Standardwert ist ebenfalls 0.
int
Ein int-Typ ist ein 32-Bit-vorzeichenbehafteter Ganzzahltyp mit einem Bereich von -2.147.483.648 bis 2.147.483.647. Der Standardwert einer ganzzahligen Variablen des Typs int ist 0.
uint
Der uint, kurz für "unsigned integer" (vorzeichenlose Ganzzahl), kann Werte von 0 bis 4.294.967.295 halten. Sein Standardwert ist 0.
Lang
Long ist ein 64-Bit-vorzeichenbehafteter Ganzzahltyp, der in der Lage ist, Werte von -9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 zu speichern. Der Standardwert eines long ist 0L.
ulong
Das ulong, oder unsigned long (vorzeichenloses Long), kann Werte von 0 bis 18.446.744.073.709.551.615 speichern. Sein Standardwert ist 0UL.
Gleitkommazahlen-Typen
Gleitkommatypen werden verwendet, um Zahlen mit Dezimalstellen zu speichern. Eine Gleitkommazahl bietet einen viel weiteren Wertebereich als Ganzzahltypen, jedoch mit einem Kompromiss in der Genauigkeit. Hier sind die Gleitkommatypen in C#:
Float
Ein float ist ein 32-Bit-Gleitkommatyp. Es kann Werte von ungefähr 1,5 x 10^-45 bis 3,4 x 10^38 darstellen, mit einer Genauigkeit von 7 Stellen. Der Standardwert einer Gleitkomma-Variablen des Typs float ist 0,0f.
Doppel
Der double-Typ ist ein 64-Bit-Gleitkommatyp. Es kann Werte von ungefähr 5,0 x 10^-324 bis 1,7 x 10^308 darstellen, mit einer Genauigkeit von 15-16 Stellen. Der Standardwert eines double ist 0,0d.
Dezimal
Der decimal-Typ ist ein 128-Bit-Datentyp. Es wird oft verwendet, wenn mit finanziellen Berechnungen gearbeitet wird, die hohe Genauigkeit erfordern. Es kann Werte von ungefähr 1,0 x 10^-28 bis 7,9 x 10^28 darstellen, mit einer Genauigkeit von 28-29 Stellen. Der Standardwert eines decimal-Typs ist 0,0m.
Unterstanding Native Sized Integer Types
Native Ganzzahltypen sind spezielle Typen in C#, deren Größe je nach Plattform variiert, auf der der Code läuft. Diese sind so konzipiert, dass sie den effizientesten Einsatz von Speicherplatz für die Speicherung von Ganzzahlwerten bieten.
IntPtr
IntPtr ist ein vorzeichenbehafteter Ganzzahltyp, der die gleiche Breite hat wie ein Zeiger. Das bedeutet, dass es auf 32-Bit-Plattformen 32-Bit und auf 64-Bit-Plattformen 64-Bit ist. Dies ist nützlich beim Umgang mit Zeiger- oder speicherbezogenen Aufgaben, und der Standardwert eines IntPtr ist 0.
UIntPtr
UIntPtr, das unsigned Pendant zu IntPtr, hat ebenfalls die gleiche Größe wie ein Zeiger. Es bietet den gleichen Wertebereich wie IntPtr auf derselben Plattform, jedoch nur für nicht-negative Werte. Der Standardwert eines UIntPtr ist ebenfalls 0.
Umwandlung zwischen Ganzzahl- und Fließkommatypen
Je nach Anwendungsfall ist es wichtig, den richtigen Datentyp in Ihrem Code zu verwenden. In vielen Fällen haben Sie möglicherweise einen Wert eines Typs und müssen diesen als einen anderen Typ verwenden.
Implizite Konvertierungen erfolgen automatisch, wenn der zu konvertierende Wert in den neuen Datentyp passt, ohne dass Informationen verloren gehen. Beispielsweise können Sie einen int implizit in einen long konvertieren, da ein long denselben Wert wie ein int speichern kann.
Explizite Konvertierungen, auch bekannt als Casting, sind erforderlich, wenn das Risiko eines Datenverlustes besteht. Zum Beispiel kann die Konvertierung eines long in einen int zu Datenverlust führen, wenn der Wert des long größer ist, als ein int halten kann.
Um einen Wert explizit von einem Typ in einen anderen zu konvertieren, können Sie den Casting-Operator () verwenden:
long myLong = 5000L;
int myInt = (int)myLong; // This is an explicit cast from long to int.
// Be cautious if myLong > 2,147,483,647 as it may cause data loss.Dim myLong As Long = 5000L
Dim myInt As Integer = CInt(myLong) ' This is an explicit cast from long to int.
' Be cautious if myLong > 2,147,483,647 as it may cause data loss.Seien Sie vorsichtig beim Casting, da es zu unerwarteten Ergebnissen führen kann, wenn der Wert außerhalb des Bereichs des Zieltyps liegt.
Anwendung numerischer Typen mit IronPDF
IronPDF ist eine leichtgewichtige .NET PDF-Bibliothek, die speziell für Webentwickler entwickelt wurde. Es macht das Lesen, Schreiben und Bearbeiten von PDF-Dateien zum Kinderspiel, kann alle Arten von Dateitypen in PDF-Inhalte konvertieren, und Sie können es in Ihren .NET-Projekten sowohl für Desktop- als auch Webanwendungen verwenden. Das Beste daran - es ist kostenlos in einer Entwicklungsumgebung auszuprobieren.
Sicherheitsvorteil zur Kompilierzeit
Positionierung und Größenbestimmung von Elementen
In diesem Beispiel passen wir die Position und Größe von Elementen auf einer Seite an. In IronPDF werden Koordinaten mit einem Gleitkommatyp definiert.
using IronPdf;
var htmlToPdf = new ChromePdfRenderer();
htmlToPdf.RenderingOptions.MarginTop = 50; // Set top margin in points.
htmlToPdf.RenderingOptions.MarginBottom = 50; // Set bottom margin in points.
var document = htmlToPdf.RenderHtmlAsPdf("<h1>Numeric Types in C# with IronPDF</h1>");
document.SaveAs("C:\\numericTypes.pdf"); // Save the generated PDF to the specified path.Imports IronPdf
Private htmlToPdf = New ChromePdfRenderer()
htmlToPdf.RenderingOptions.MarginTop = 50 ' Set top margin in points.
htmlToPdf.RenderingOptions.MarginBottom = 50 ' Set bottom margin in points.
Dim document = htmlToPdf.RenderHtmlAsPdf("<h1>Numeric Types in C# with IronPDF</h1>")
document.SaveAs("C:\numericTypes.pdf") ' Save the generated PDF to the specified path.Ausgabe PDF-Datei

Abschluss
Von grundlegenden Berechnungen bis zur Anpassung des Layouts eines generierten PDFs sind Zahltypen ein wichtiger Bestandteil einer effektiven und effizienten C#-Programmierung. Sie dienen als Bausteine zur Datenmanipulation, Algorithmusgestaltung und Erstellung hochwertiger PDF-Dokumente.
Möchten Sie IronPDF ausprobieren? Sie können mit unserer 30-tägigen kostenlosen Testversion beginnen. Es ist auch völlig kostenlos für Entwicklungszwecke, sodass Sie wirklich sehen können, woraus es besteht. Und wenn Ihnen gefällt, was Sie sehen, beginnt IronPDF bereits ab liteLicense. Für noch größere Einsparungen prüfen Sie die [Iron Suite](Iron Suite), bei der Sie alle neun Iron Software-Tools zum Preis von zwei erhalten können. Viel Spaß beim Coden!

Jacob Mellor ist Chief Technology Officer bei Iron Software und ein visionärer Ingenieur, der Pionierarbeit in der C# PDF-Technologie leistet. Als der ursprüngliche Entwickler hinter der Kern-Codebasis von Iron Software hat er die Produktarchitektur des Unternehmens seit seiner Gründung geprägt und es zusammen mit CEO Cameron Rimington in ein Unternehmen mit mehr als 50 Mitarbeitern verwandelt, das die NASA, Tesla und globale Regierungsbehörden beliefert.
Verwandte Artikel


