Contenido del Curso
Conceptos básicos de C#
Conceptos básicos de C#
Tipos de Datos Enteros
Los Tipos de Datos son clasificaciones de valores de datos en diferentes categorías según su naturaleza, como números enteros, números decimales, datos textuales, etc. Cada tipo de dato tiene diferentes tipos de operaciones asociadas, por ejemplo, podemos realizar operaciones aritméticas en datos numéricos pero no en datos textuales.
La palabra clave int
se refiere al tipo de dato "entero", que básicamente representa los números enteros.
En la última sección aprendimos la siguiente sintaxis para declarar una variable:
Además de la sintaxis anterior, hay otro método de declaración de variables:
Aquí type
se refiere al tipo de dato de la variable. Hasta ahora solo conocemos int
. Podemos declarar una variable de tipo de dato entero de la siguiente manera:
En este caso también podemos declarar una variable sin darle un valor inicial:
Nota
Dar un valor inicial a una variable en el momento de la declaración se llama inicialización.
La palabra clave var
permite al compilador inferir automáticamente el tipo de dato de una variable basado en el valor asignado. Por ejemplo, en var myVariable = 7;
, la variable myVariable
se le asigna un valor entero, haciendo que su tipo de dato sea int
. Tal variable se llama una Variable de Tipo Implícito. Tenga en cuenta que al usar la palabra clave var
, la variable siempre debe ser inicializada, por lo tanto, escribir var myVariable;
es inválido.
Por otro lado, especificar manualmente el tipo de dato no requiere un valor inicial. Por lo tanto, tanto int myVariable;
como int myVariable = 10;
son declaraciones válidas. En este caso, myVariable
es una Variable de Tipo Explícito.
El siguiente código resume los dos párrafos anteriores:
main
var myVar1 = 10; // Valid var myVar2; // Error: Implicitly-typed variables must be initialized int myVar3 = 10; // Valid int myVar4; // Valid
Es importante notar que no podemos usar una variable a la que no se le ha asignado ningún valor. Por lo tanto, el siguiente código dará un error:
main
int myVar; System.Console.WriteLine(myVar); // Error: Use of unassigned local variable 'myVar'
Corrección:
main
int myVar; myVar = 10; System.Console.WriteLine(myVar); // Output: 10
Podemos reasignar una variable tantas veces como queramos:
main
int myVar = 10; System.Console.WriteLine(myVar); // Output: 10 myVar = 15; System.Console.WriteLine(myVar); // Output: 15 myVar = 17; System.Console.WriteLine(myVar); // Output: 17 myVar = 7; System.Console.WriteLine(myVar); // Output: 7
Una variable int
solo puede almacenar valores dentro de un cierto rango. Hay otro tipo de dato long
que es igual a int
, sin embargo, puede almacenar números más grandes.
Range | |
int | -2,147,483,648 to 2,147,483,647 |
long | -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 |
Almacenar un número más grande de lo que un tipo de dato puede contener podría dar resultados inesperados. No necesitamos ver eso en detalle a este nivel.
Podemos realizar operaciones aritméticas en datos int
y long
. El siguiente fragmento de código muestra algunos ejemplos:
main
// int values int a = 10; int b = 25; int c = a + b; // long values long d = 1000; long e = 2500; long f = d + e; // Adding a 'long' and an 'int' always results in a 'long' resultant value. // Therefore we can store the result of 'd + a' into a new 'long' variable called 'g'. long g = d + a; // For the same reason, we cannot store the result of 'd + a' into an 'int' variable int h = d + a; // Error on this line int i = 5 / 2; System.Console.WriteLine(i); // Output: 2 // Dividing 5 by 2 gives 2.5 however since 'int' can only store integer values, hence the decimal (0.5) part is ignored.
Hay otros dos tipos de datos uint
y ulong
, llamados unsigned int y unsigned long respectivamente. Un tipo de dato sin signo solo puede contener números positivos, por lo tanto, tienen un rango positivo mayor.
Range | |
uint | 0 to 4,294,967,295 |
ulong | 0 to 18,446,744,073,709,551,615 |
¡Gracias por tus comentarios!