AYUDA .NET

Tipos numéricos en C# (Cómo funciona para desarrolladores)

Publicado en 15 de agosto, 2024
Compartir:

En C#, los tipos numéricos son un conjunto de tipos de datos utilizados para almacenar números y pueden dividirse en dos categorías principales: tipos enteros y tipos de coma flotante. Cada categoría tiene sus propias características y casos de uso.

Los tipos numéricos constituyen la base de numerosas operaciones en C#, desde cálculos financieros y monetarios hasta algoritmos complejos. Si quieres dominar C#, necesitarás dominar estos tipos de valores.

Tipos de datos enteros

Los tipos de datos enteros se utilizan para almacenar números enteros y pueden ser con signo(capaz de contener números positivos y negativos) o sin signo(capaz de contener sólo números positivos). Aquí tienes un desglose de los tipos de enteros en C#:

byte

El byte es el tipo de número entero más pequeño. Es un tipo sin signo, con un valor por defecto de 0, capaz de almacenar el mismo valor de 0 a 255.

sbyte

El sbyte es la contrapartida con signo del byte. Puede almacenar valores de -128 a 127, con un valor por defecto de 0.

corto

Un short es un entero con signo de 16 bits. Tiene un rango mayor que el byte y el sbyte, de -32768 a 32767, con un valor por defecto de 0.

ushort

ushort es la contrapartida sin signo del short. Puede contener valores de 0 a 65535. Su valor por defecto también es 0.

int

Un tipo int es un tipo entero con signo de 32 bits, con un rango de -2.147.483.648 a 2.147.483.647. El valor por defecto de una variable entera de tipo int es 0.

uint

El uint, abreviatura de "unsigned integer" (entero sin signo), puede contener valores de 0 a 4.294.967.295. Su valor por defecto es 0.

largo

Long es un tipo entero con signo de 64 bits, capaz de almacenar valores de -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807. El valor por defecto de un long es 0L.

ulong

El ulong, o unsigned long, puede almacenar valores de 0 a 18.446.744.073.709.551.615. Su valor por defecto es 0UL.

Tipos de números en coma flotante

Los tipos de coma flotante se utilizan para almacenar números con punto decimal. Un número de coma flotante ofrece una gama de valores mucho más amplia que los tipos enteros, pero con una contrapartida en la precisión. Estos son los tipos de coma flotante en C#:

float

Un float es un tipo de coma flotante de 32 bits. Puede representar valores de aproximadamente 1,5 x 10^-45 a 3,4 x 10^38, con una precisión de 7 dígitos. El valor por defecto de una variable de coma flotante de tipo float es 0.0f.

doble

El tipo double es un tipo de coma flotante de 64 bits. Puede representar valores de aproximadamente 5,0 x 10^-324 a 1,7 x 10^308, con una precisión de 15-16 dígitos. El valor por defecto de un double es 0.0d.

decimal

El tipo decimal es un tipo de datos de 128 bits. Suele utilizarse cuando se trata de cálculos financieros que requieren gran precisión. Puede representar valores de aproximadamente 1,0 x 10^-28 a 7,9 x 10^28, con una precisión de 28-29 dígitos. El valor por defecto de un tipo decimal es 0,0m.

Tipos enteros de tamaño nativo

Los tipos enteros de tamaño nativo son tipos especiales en C# que tienen un tamaño que varía en función de la plataforma en la que se ejecuta el código. Están diseñados para proporcionar el uso más eficiente de la memoria para almacenar valores enteros.

IntPtr

IntPtr es un tipo entero con signo que tiene la misma anchura que un puntero. Esto significa que es de 32 bits en plataformas de 32 bits y de 64 bits en plataformas de 64 bits. Esto es útil cuando se trata de punteros o tareas relacionadas con la memoria, y el valor por defecto de un IntPtr es 0.

UIntPtr

UIntPtr, el homólogo sin signo de IntPtr, también tiene el mismo tamaño que un puntero. Proporciona el mismo rango de valores que IntPtr en la misma plataforma, pero sólo para valores no negativos. El valor por defecto de un UIntPtr también es 0.

Conversión entre tipos enteros y de coma flotante

En función del caso de uso, es importante utilizar el tipo de datos correcto en el código. En muchos casos, puede tener un valor de un tipo y necesitar utilizarlo como otro tipo.

Las conversiones implícitas se producen automáticamente cuando el valor a convertir cabe en el nuevo tipo de datos sin perder información. Por ejemplo, puede convertir implícitamente un int en un long, ya que un long puede almacenar el mismo valor que un int.

Las conversiones explícitas, también conocidas como "casting", son necesarias cuando existe riesgo de pérdida de datos. Por ejemplo, convertir un long en un int puede provocar la pérdida de datos si el valor del long es mayor que el que puede contener un int.

Para convertir explícitamente un valor de un tipo a otro, puede utilizar el operador de conversión():

long myLong = 5000L;
int myInt = (int)myLong; // This is an explicit cast.
long myLong = 5000L;
int myInt = (int)myLong; // This is an explicit cast.
Dim myLong As Long = 5000L
Dim myInt As Integer = CInt(myLong) ' This is an explicit cast.
VB   C#

Tenga cuidado al hacer el casting, ya que puede dar lugar a resultados inesperados si el valor está fuera del rango del tipo de destino.

Aplicación de tipos numéricos con IronPDF

IronPDF es una ligera biblioteca PDF .NET diseñada específicamente pensando en los desarrolladores web. Hace que leer, escribir y manipular archivos PDF sea pan comido, ya que es capaz de convertir todo tipo de archivos en contenido PDF, y puede utilizarlo en sus proyectos .NET tanto para escritorio como para web. Y lo mejor es que se puede probar gratis en un entorno de desarrollo.

Echemos un vistazo a la implementación de tipos en C# utilizando IronPDF.

Posicionamiento y dimensionamiento de los elementos

En este ejemplo, modificaremos la posición y el tamaño de los elementos de una página. En IronPDF, las coordenadas se definen utilizando un tipo de punto flotante.

using IronPdf;
var htmlToPdf = new ChromePdfRenderer();
htmlToPdf.RenderingOptions.MarginTop= 50; // Set top margin. Value is in points.
htmlToPdf.RenderingOptions.MarginBottom= 50; // Set bottom margin. Value is in points.
var document = htmlToPdf.RenderHtmlAsPdf("<h1>Numeric Types in C# with IronPDF</h1>");
document.SaveAs("C:\\numericTypes.pdf");
using IronPdf;
var htmlToPdf = new ChromePdfRenderer();
htmlToPdf.RenderingOptions.MarginTop= 50; // Set top margin. Value is in points.
htmlToPdf.RenderingOptions.MarginBottom= 50; // Set bottom margin. Value is in points.
var document = htmlToPdf.RenderHtmlAsPdf("<h1>Numeric Types in C# with IronPDF</h1>");
document.SaveAs("C:\\numericTypes.pdf");
Imports IronPdf
Private htmlToPdf = New ChromePdfRenderer()
htmlToPdf.RenderingOptions.MarginTop= 50 ' Set top margin. Value is in points.
htmlToPdf.RenderingOptions.MarginBottom= 50 ' Set bottom margin. Value is in points.
Dim document = htmlToPdf.RenderHtmlAsPdf("<h1>Numeric Types in C# with IronPDF</h1>")
document.SaveAs("C:\numericTypes.pdf")
VB   C#

Archivo PDF de salida

Entendiendo los tipos numéricos de C#, Imagen #1

Conclusión

Desde cálculos básicos hasta la personalización del diseño de un PDF generado, los tipos de números son una parte importante de la programación eficaz y eficiente en C#. Sirven de base para la manipulación de datos, el diseño de algoritmos y la creación de documentos PDF de alta calidad.

¿Quiere hacerse con IronPDF? Puede empezar con nuestro30 días de prueba gratuita. Además, su uso para fines de desarrollo es totalmente gratuito, por lo que podrás ver de qué está hecho. Y si le gusta lo que ve, IronPDF le ofrece desde tan sólo$749. Para ahorrar aún más, consulte laIron Suite donde puede conseguir las nueve herramientas de Iron Software por el precio de dos. Feliz codificación!

Comprensión de los tipos numéricos de C#, Imagen nº 2

< ANTERIOR
Blazor vs MVC (Cómo funciona para los desarrolladores)
SIGUIENTE >
Tipos de C# (Cómo funciona para los desarrolladores)

¿Listo para empezar? Versión: 2024.12 acaba de salir

Descarga gratuita de NuGet Descargas totales: 11,622,374 Ver licencias >