Qué tipos de datos existen en C#

Que Tipos De Datos Existen En C



Los tipos de datos son un aspecto importante de cualquier lenguaje de programación y C# ofrece varios tipos de datos que se utilizan para declarar variables, definir métodos y crear objetos. En este artículo, analizaremos los diferentes tipos de datos en C# y sus subcategorías, incluidos los tipos de datos de valor, referencia y puntero.

¿Qué tipos de datos existen en C#?

C# es un lenguaje de programación fuertemente tipado , lo que significa que todas las variables deben declararse con un tipo de datos específico y tiene tres categorías principales de tipos de datos:







1: Tipos de datos de valor

Los tipos de datos de valor son aquellos que almacenan sus valores directamente en la memoria. Se asignan en la pila y, a menudo, se emplean para almacenar conjuntos de datos más pequeños. Las siguientes son las subcategorías de los tipos de datos de valor:



Tipo de datos numéricos



Estos tipos de datos se utilizan para almacenar valores numéricos. Los tipos de datos numéricos se dividen en varias subcategorías, como decimales, enteros y números de coma flotante:





  • enteros: Estos tipos de datos se utilizan para almacenar números enteros y las subcategorías de enteros incluyen sbyte, byte, short, ushort, int, uint, long y ulong. El rango de valores que puede contener cada formato de datos enteros varía.
  • Números de punto flotante: Estos tipos de datos se utilizan para almacenar números decimales y las subcategorías de números de punto flotante incluyen float y double. Float puede almacenar hasta 7 dígitos decimales, mientras que double puede almacenar hasta 15 dígitos decimales.
  • Decimales: Estos tipos de datos se utilizan para almacenar enteros decimales de alta precisión. Decimal puede almacenar hasta 28 dígitos decimales.

Tipo de datos booleanos

Los valores booleanos, que solo pueden ser verdaderos o falsos, se almacenan en esta forma de datos.



Tipo de datos de carácter

Los caracteres individuales se almacenan utilizando este tipo de datos.

Ejemplo

El siguiente código de ejemplo ilustra cómo utilizar el tipo de datos de valor en C#:

utilizando el sistema;

espacio de nombres ValueDataTypesExample
{
programa de clase
    {
vacío estático Principal ( cadena [ ] argumentos )
        {
int miInt = 5 ;
float myFloat = 3.14f;
doble miDoble = 3.14159265359 ;
bool miBool = verdadero ;
char miChar = 'a' ;

Consola.WriteLine ( 'Mi valor entero es: ' + miInt ) ;
Consola.WriteLine ( 'Mi valor flotante es: ' + mi Flotador ) ;
Consola.WriteLine ( 'Mi valor doble es: ' + miDoble ) ;
Consola.WriteLine ( 'Mi valor booleano es: ' + mi Bool ) ;
Consola.WriteLine ( 'El valor de mi carácter es: ' + miChar ) ;
        }
    }
}

 

En este ejemplo, hemos declarado e inicializado variables de diferentes tipos de datos de valor, como int, float, double, bool y char. Luego imprimimos los valores de estas variables usando el método Console.WriteLine, la salida de este programa será:

2: Tipos de datos de referencia

Los tipos de datos de referencia son aquellos que almacenan una referencia a la ubicación de memoria donde se almacena el valor. Se asignan en el montón y, por lo general, se utilizan para almacenar grandes cantidades de datos. Las siguientes son las subcategorías de los tipos de datos de referencia:

Clase

En C#, una clase es un tipo de referencia que define un modelo para crear objetos.

Cadena

Este tipo de datos de referencia se usa para almacenar datos de texto, la cadena es un tipo de referencia, pero se comporta como un tipo de valor de muchas maneras.

Formación

Se puede almacenar una colección de valores del mismo tipo utilizando este tipo de datos. Las matrices son tipos de referencia, pero también pueden comportarse como tipos de valor en ciertos casos.

Interfaz

Una interfaz define un conjunto de métodos, propiedades, eventos e indexadores, sin proporcionar ningún detalle de implementación.

Delegar

Un delegado le permite pasar un método como argumento a otro método y luego invocar ese método más tarde a través del delegado.

Ejemplo

Aquí hay un ejemplo de código C# que muestra cómo usar tipos de datos de referencia :

utilizando el sistema;

persona de clase
{
cadena pública Nombre;
public int Edad;
}

programa de clase
{
vacío estático Principal ( cadena [ ] argumentos )
    {
Persona persona1 = nueva Persona ( ) ;
        person1.Name = 'ÉL MISMO' ;
persona1.Edad = 20 ;

Persona persona2 = persona1;
persona2.Edad = 30 ;

Consola.WriteLine ( person1.Name + ' es ' + persona1.Edad + 'años'. ) ;
Consola.WriteLine ( person2.Name + ' es ' + persona2.Edad + 'años'. ) ;
    }
}

 

La clase Person de este ejemplo tiene dos campos públicos: Name, que es de tipo string, y Age, que es de tipo int. Luego, creamos una nueva instancia de la clase Person y la asignamos a person1 en el método Main. Modificamos los atributos Nombre y Edad de person1.

A continuación, creamos otra variable de referencia persona2 y le asignamos el valor de persona1. Luego cambiamos la propiedad Edad de person2 a 30.

Finalmente, imprimimos el Nombre y la Edad de persona1 y persona2. Observe que, cambiando el valor de persona2.Edad también cambia el valor de persona1.Edad , ya que ambas variables se refieren a la misma objeto en memoria.

3: Tipos de datos de puntero

Los tipos de datos de puntero se utilizan para almacenar la dirección de memoria de otra variable. Se utilizan en la programación de bajo nivel, como la programación a nivel de sistema o el desarrollo de controladores de dispositivos. . En C#, los tipos de datos de puntero no se usan directamente , pero se pueden usar en bloques de código no seguros. La siguiente es la subcategoría de tipos de datos de puntero:

Tipo de datos de puntero

Este tipo de datos se utiliza para almacenar la dirección de memoria de otra variable.

Aquí hay un ejemplo que demuestra el uso de tipos de datos de puntero en C# aunque requiere mucho cuidado:

utilizando el sistema;

programa de clase {
vacío inseguro estático Principal ( ) {
número entero = 10 ;
En t * p = & en uno;
Consola.WriteLine ( $ 'Valor de número: {número}' ) ;
Consola.WriteLine ( $ 'Dirección de num: {(long)p:X}' ) ;
Consola.WriteLine ( $ 'Valor de num usando puntero: {*p}' ) ;
Consola.ReadLine ( ) ;
    }
}

 

En este ejemplo, usamos la palabra clave insegura para permitir el uso de punteros. Declaramos una variable de tipo int y le damos el valor 10. Luego creamos un puntero de variable puntero de tipo int* y le asignamos la dirección de memoria del valor usando el operador &.

Además, luego accedemos al valor almacenado en valor eliminando la referencia del puntero usando el operador *, y también podemos modificar el valor usando el mismo operador:

Nota: El uso de punteros en C# requiere cuidado y atención adicionales para evitar problemas de administración de memoria, por lo que solo deben usarse cuando sea necesario y con precaución.

Conclusión

Hay muchos tipos de datos diferentes disponibles en C# que se pueden utilizar para diversas tareas. Las cantidades más pequeñas de datos se almacenan con tipos de datos de valor y las cantidades más grandes se almacenan con tipos de datos de referencia. Los tipos de datos de puntero se usan en la programación de bajo nivel y no se usan comúnmente en C#.