Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

2.1 - Tipos de Datos

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

PROGRAMACIÓN I Preparado por: Ing.

René Castro

UNIDAD II - INTRODUCCIÓN A LOS TIPOS DE DATOS, OPERADORES Y


ESTRUCTURAS DE CONTROL
2.1. TIPOS DE DATOS.

TIPOS DE DATOS EN C#.


C# contiene dos categorías generales de tipos de datos: tipo de datos por valor y por referencia. La
diferencia entre los dos tipos de datos es lo que contiene la variable. Para un tipo de datos por
valor, una variable contiene un valor real, como 3.1416 o 212. Para un tipo de datos por
referencia, la variable contiene una referencia al valor. El tipo de datos por referencia más
comúnmente usado es la clase, la cual será estudiada posteriormente en el curso.

TIPOS DE DATOS POR VALOR.


En el corazón de C# existen 13 tipos de datos por valor, los cuales se muestran a continuación.

Tipo de datos Significado

bool Representa valores true/false (verdadero/falso).

byte Representa enteros de 8 bits sin signo.

char Representa un carácter.

decimal Representa un tipo de datos numérico para cálculos financieros.

double Representa un punto flotante de precisión doble.

float Representa un punto flotante de precisión simple.

int Representa enteros de 32 bits con signo.

long Representa enteros de 64 bits con signo.

sbyte Representa enteros de 8 bits con signo.

short Representa enteros de 16 bits con signo.

uint Representa enteros de 16 bits sin signo.

ulong Representa enteros de 64 bits sin signo.

1 de 5
PROGRAMACIÓN I Preparado por: Ing. René Castro

Tipo de datos Significado

ushort Representa enteros de 8 bits sin signo.

Colectivamente, estos son referidos como tipos de datos simples. Son llamados simples porque
consisten en un solo valor (en otras palabras, no son compuestos por dos o más valores). Forman
la base fundamental del sistema de tipos de C#, elementos de datos de bajo nivel sobre los cuales
opera un programa. Los tipos de datos simples también son llamados tipos de datos primitivos.
NOTA: Adicional a los tipos de datos simples. C# define tres otras categorías de tipos de datos por
valor. Estos son enumeraciones, estructuras y tipos nulos.

TIPOS DE DATOS ENTERO.


C# define nueve tipos de datos enteros: char, byte, sbyte, short, ushort, int, uint, long, y ulong. Sin
embargo, el tipo de datos char es primariamente usado para representar caracteres. Los ocho
tipos de datos restantes son usados para cálculos numéricos. Sus tamaños en bits y rangos son
mostrados a continuación:

Tipo Tamaño en bits Rango

byte 8 0 a 255

sbyte 8 -128 a 127

short 16 -32,768 a 32,767

ushort 16 0 a 65,535

int 32 -2,147,483,648 a 2,147,483,647

uint 32 0 a 4,294,967,295

long 64 -9,223,372,036,854,775,808 a
9,223,372,036,854,775,807

ulong 64 0 a 18,446,744,073,709,551,615

Como se muestra en la tabla, C# define ambas versiones (con y sin signo) para varios tipos de
datos enteros. La diferencia entre los enteros con signo y sin signo es la forma como el bit más
significativo es interpretado. Si un entero con signo es especificado, entonces el compilador C#
generará código que asume que el bit más significativo será usado como la bandera de signo. Si la
bandera de signo es 0, entonces el número es positivo; si es 1, entonces el número es negativo.
Los números enteros con signo son importantes para una gran mayoría de algoritmos, pero sólo

2 de 5
PROGRAMACIÓN I Preparado por: Ing. René Castro

tienen la mitad de la magnitud de sus parientes sin signo. Por ejemplo, para el tipo de datos short,
aquí tiene al número 32,767:
0111111111111111

Para un valor con signo, si el bit más significativo fuera establecido en 1, el número sería entonces
interpretado como negativo. Sin embargo, si declara este número como ushort, entonces cuando
el bit más significativo sea establecido en 1, el número se convertiría en 65,535.
Ejemplo:
long pulgadas;
long pies;
pies = 485216;
pulgadas = pies * 12;
Console.WriteLine(pies + " pies son " + pulgadas + " pulgadas");

TIPO DE DATOS FLOTANTE.


El tipo de datos flotante puede representar números que tienen componentes fraccionales. Hay
dos tipos de datos de punto flotante: float y double, los cuales representan números de precisión
simple y doble, respectivamente.

Tipo Tamaño en bits Rango

float 32 1.5E–45 a 3.4E+38

double 64 5E–324 a 1.7E+308

De los dos, el tipo de datos double es el más comúnmente usado. Una razón para esto es que
muchas de las funciones matemáticas de la biblioteca de clases de C# usa valores double.
Ejemplo:
Double radio;
Double area;
radio = 4.0;
area = 3.14416 * Math.Pow(radio,2);
Console.WriteLine("El area de un circulo de radio " + radio + " es " + area);

3 de 5
PROGRAMACIÓN I Preparado por: Ing. René Castro

Tipo de datos decimal


El tipo de datos decimal es quizás el tipo de datos numérico más interesante en C#, por ser usado
en cálculos monetarios.

Tipo Tamaño en bits Rango

decimal 128 1E–28 a 7.9E+28

Como sabe, la aritmética de punto flotante normal está sujeta a una variedad de errores de
redondeo cuando es aplicada a valores decimales. El tipo de datos decimal elimina esos errores y
puede representar con precisión hasta 28 espacios decimales (o 29 espacios en algunos casos).
Esta habilidad de representar valores decimales sin errores de redondeo lo hace especialmente
útil para cálculos que involucran dinero.
Ejemplo:
decimal precio;
decimal descuento;
decimal precio_descuento;
precio = 19.95m;
descuento = 0.15m;
precio_descuento = precio - (precio * descuento);
Console.WriteLine("El precio con descuento es: $" + precio_descuento);
Observe que las constantes decimales están seguidas por el sufijo m. Esto es necesario porque sin
el sufijo, estos valores serían interpretados como constantes de punto flotante estándar, lo cual no
es compatible con el tipo de datos decimal.

Tipo de datos carácter


En C#, los caracteres no son cantidades de 8 bits como lo son en muchos otros lenguajes de
programación, tales como C+. En su lugar, C# utiliza un tipo de carácter de 16 bits llamado
Unicode. Unicode define un conjunto de caracteres que es lo suficientemente grande para
representar a todos los caracteres encontrados en todos los lenguajes humanos. A pesar de que
muchos idiomas, tales como inglés, francés o alemán usan alfabetos pequeños, algunos idiomas
como en chino usan un conjunto muy amplio de caracteres que no pueden ser representados
usando solamente 8 bits. Para atender esta situación, en C# char es un tipo de datos que no tiene
signo y que tiene un rango entre 0 y 65,535. El conjunto de caracteres estándar ASCII de 8 bits es
un subconjunto de Unicode y tiene un rango de 0 a 127. Así, los caracteres ASCII aún son
caracteres C# válidos. A una variable de carácter se le puede asignar un valor encerrándolo el
carácter entre comillas simples.

Tipo Tamaño en bits Rango

char 16 0 a 65,535

4 de 5
PROGRAMACIÓN I Preparado por: Ing. René Castro

A pesar de que char es definido por C# como un tipo de datos entero, no puede ser libremente
mezclado con enteros en todo caso. Esto es debido a que no hay una conversión automática de
tipos de datos entre integer y char.
Ejemplos:
1. char car1;
car1 = 'a';
2. char car2 = 'b';
3. char car3 = '\u0066';

NOTAS:
1. Puede obtener un listado completo de caracteres Unicode en las direcciones
siguientes:
https://en.wikipedia.org/wiki/List_of_Unicode_characters
http://unicode.org/charts/
2. Puede ampliar sobre codificación de caracteres en la dirección siguiente:
https://en.wikipedia.org/wiki/Character_encoding

Tipo de datos bool


El tipo de datos bool representa valores true/false (verdadero/falso). C# define los valores
verdadero y falso usando las palabras reservadas true y false. Así, una variable o expresión de tipo
bool será de uno de estos valores. Es más, no hay conversión definida entre valores bool y enteros.
Por ejemplo, 1 no se convierte en verdadero ni 0 se convierte en falso.
Ejemplo:
bool b;
b = false;

5 de 5

También podría gustarte