Tipos numéricos en C# (Cómo funciona para desarrolladores)
En C#, los tipos numéricos son un conjunto de tipos de datos utilizados para almacenar números y se pueden dividir en dos categorías principales: tipos enteros y tipos de punto flotante. Cada categoría tiene características y casos de uso únicos.
Los tipos numéricos forman la base de numerosas operaciones en C#, desde cálculos financieros y monetarios hasta algoritmos complejos. Si deseas dominar C#, necesitarás dominar estos tipos de valor.
Tipos de datos enteros
Los tipos de datos enteros son utilizados para almacenar números enteros y pueden ser con signo (capaz de contener números positivos y negativos) o sin signo (capaz de contener solo números positivos). Aquí hay un desglose de los tipos enteros en C#:
byte
El byte es el tipo entero más pequeño. Es un tipo sin signo, con un valor predeterminado de 0, capaz de almacenar valores de 0 a 255.
sbyte
El sbyte es el equivalente con signo del byte. Puede almacenar valores de -128 a 127, con un valor predeterminado de 0.
breve
Un short es un entero con signo de 16 bits. Tiene un rango más amplio que el byte y el sbyte, de -32,768 a 32,767, con un valor predeterminado de 0.
breve
ushort es el equivalente sin signo del short. Puede contener valores de 0 a 65,535. Su valor predeterminado también es 0.
int
Un tipo int es un entero con signo de 32 bits, con un rango de -2,147,483,648 a 2,147,483,647. El valor predeterminado de una variable entera de tipo int es 0.
uint
El uint, abreviatura de "unsigned integer", puede contener valores de 0 a 4,294,967,295. Su valor predeterminado 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 predeterminado de un long es 0L.
ulong
El ulong, o long sin signo, puede almacenar valores de 0 a 18,446,744,073,709,551,615. Su valor predeterminado es 0UL.
Tipos de números de coma flotante
Los tipos de punto flotante se utilizan para almacenar números con un punto decimal. Un número de punto flotante proporciona un rango de valores mucho más amplio que los tipos enteros, pero con una compensación en precisión. Aquí están los tipos de punto flotante en C#:
float
Un float es un tipo de punto 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 predeterminado de una variable de punto flotante de tipo float es 0.0f.
doble
El tipo double es un tipo de punto 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 predeterminado de un double es 0.0d.
decimal
El tipo decimal es un tipo de dato de 128 bits. A menudo se usa cuando se trata de cálculos financieros que requieren alta 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 predeterminado de un tipo decimal es 0.0m.
Entender los tipos enteros de tamaño nativo
Los tipos de enteros de tamaño nativo son tipos especiales en C# que tienen un tamaño que varía según la plataforma en la que se ejecuta el código. Estos 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 el mismo ancho 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 al tratar con tareas relacionadas con punteros o memoria, y el valor predeterminado de un IntPtr es 0.
UIntPtr
UIntPtr, el equivalente 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 solo para valores no negativos. El valor predeterminado de un UIntPtr también es 0.
Conversión entre tipos enteros y de coma flotante
Dependiendo del caso de uso, es importante usar el tipo de dato correcto en tu código. En muchos casos, es posible que tengas un valor de un tipo y necesites usarlo como otro tipo.
Las conversiones implícitas ocurren automáticamente cuando el valor a convertir cabe en el nuevo tipo de dato sin perder información. Por ejemplo, puedes convertir implícitamente un int a 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 hay un riesgo de pérdida de datos. Por ejemplo, convertir un long a un int puede resultar en pérdida de datos si el valor del long es mayor de lo que un int puede contener.
Para convertir un valor de manera explícita de un tipo a otro, puedes usar el operador de casting ():
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.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.Ten cuidado al hacer casting, ya que puede llevar 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 biblioteca PDF .NET ligera diseñada específicamente pensando en los desarrolladores web. Hace que leer, escribir y manipular archivos PDF sea muy sencillo, capaz de convertir todo tipo de tipos de archivo en contenido PDF, y puedes usarlo en tus proyectos .NET tanto para escritorio como para la web. Lo mejor de todo - es gratis para probar en un entorno de desarrollo.
Echemos un vistazo a la implementación de tipos en C# usando IronPDF.
Posicionamiento y dimensionamiento de elementos
En este ejemplo, ajustaremos la posición y tamaño de los elementos en una página. En IronPDF, las coordenadas se definen usando un tipo de punto flotante.
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.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.Fichero PDF de salida

Conclusión
Desde cálculos básicos hasta la personalización del diseño de un PDF generado, los tipos numéricos son una parte importante de la programación efectiva y eficiente en C#. Sirven como bloques de construcción para la manipulación de datos, el diseño de algoritmos y la creación de documentos PDF de alta calidad.
¿Quieres probar IronPDF? Puedes comenzar con nuestra prueba gratuita de 30 días. También es completamente gratis para usar con fines de desarrollo, para que realmente puedas ver de qué está hecho. Y si te gusta lo que ves, IronPDF comienza tan bajo como liteLicense. Para obtener aún más ahorros, consulta el [Iron Suite](Iron Suite) donde puedes obtener las nueve herramientas de Iron Software por el precio de dos. ¡Feliz programación!

Preguntas Frecuentes
¿Cómo puedo convertir contenido HTML en un PDF usando C#?
Puedes convertir contenido HTML en un PDF en C# utilizando el método RenderHtmlAsPdf de IronPDF, que te permite transformar cadenas HTML directamente en documentos PDF. Además, puedes usar RenderHtmlFileAsPdf para convertir archivos HTML.
¿Cuáles son las principales diferencias entre los tipos enteros y de punto flotante en C#?
En C#, los tipos enteros se usan para números enteros e incluyen tipos como byte, int y long. Los tipos de punto flotante, como float y double, manejan números con puntos decimales, ofreciendo un rango más amplio pero menos precisión.
¿Por qué usaría un tipo decimal en lugar de un double en C#?
El tipo decimal proporciona mayor precisión, lo que lo hace ideal para cálculos financieros donde la representación decimal exacta es crucial. Puede representar valores con una precisión de 28-29 dígitos, en comparación con los 15-16 dígitos de un double.
¿Cómo benefician los tipos enteros de tamaño nativo a los desarrolladores de C#?
Los tipos enteros de tamaño nativo como IntPtr y UIntPtr ajustan su tamaño según la plataforma, ofreciendo eficiencia de memoria para tareas como el manejo de direcciones de memoria y punteros en escenarios específicos de la plataforma.
¿Qué papel juegan los tipos numéricos en la generación de PDF con .NET?
Los tipos numéricos en la generación de PDF con .NET son esenciales para definir el diseño de los elementos PDF. Por ejemplo, los números de punto flotante pueden especificar el tamaño y la posición precisa de texto e imágenes en una página PDF usando IronPDF.
¿Qué son las conversiones implícitas y explícitas en C#?
Las conversiones implícitas en C# ocurren cuando el tipo de destino puede almacenar el valor de origen sin pérdida de datos. Las conversiones explícitas, o de casting, requieren intervención manual, a menudo usando un operador de conversión, debido a la potencial pérdida de datos.
¿Cómo puedo evaluar una biblioteca PDF de .NET para mi proyecto?
Puedes evaluar una biblioteca PDF de .NET como IronPDF aprovechando su prueba gratuita de 30 días. Esto te permite explorar sus características durante el desarrollo antes de decidirte por la compra de una licencia.








