Tipos de datos

(carácter indlvidual) Date Asignación de almacenamiento nominal En función de la plataforma de True o False implementación 1 byte O a 255 (sin signo) 2 bytes 8 bytes 0 a 65535 (sin signo) 0:00:00 (medianoche) del 1 de enero de 0001 a p. m. del 31 de diciembre de gggg. O a 4/-79. 228. 162. 514. 264. 337. 593. 543. 950. 335 (+/-7,9… E+28) t sin separador decimal; O a +/7,9228162514264337593543950335 con 28 posiciones a la derecha del decimal; el número distinto de cero más pequeño es +/O,OOOOOOOOOOOOOOOOOOOOOOOOOOOI (+/-1 E-28) -l ,79769313485231 para los valores nega a 1,79769313486231 positivos -2. 47. 483. -9. 223. 372. 036. 854. 7 (9,2… E+1 8 t) (con Signo) Intervalo de valores Decimal 1 6 bytes org 841246544+324 t 6 5841246544E-324 signo) 54. 775. 807 Double (punto flotante de precisión doble) Integer Long (entero largo) 4 bytes 8 bytes 4 bytes en plataforma de 32 bits Object 8 bytes en plataforma de 64 bits 1 byte 2 bytes Programación de Computadores Ing.

Javier Ricardo Luna Pineda corto) Single (punto flotante de precisión simple) String (longitud ariable) IJInteger l_JLong UserDefined (estructura) IJShort -3,4028235038 a -1 ,401298E-45 t para los valores negativos; 4 bytes 1 ,401298E-45 a 3,4028235E+38 t para los valores positivos En función de la plataforma de implementación 4 bytes 8 bytes En función de la plataforma de implementación 2 bytes O a 2. 000 millones de caracteres Unicode aprox. O a 4. 294. 967. 295 (Sin Signo) O a 18. 446. 744. 073. 709. 551. 615 (1 ,8…

E+19 t) (Sin Signo) Cada miembro de la estructura tiene un intervalo de valores determinado por su tipo de datos y es independiente de los ntervalos de valores correspondientes a los demás miembros. O a 65. 535 (Sin Signo) En la notación científica, «E» hace referencia a una potencia de 10. Por lo tanto, 3,56E+2 significa 3. 56 x 102 0 356, y 3,56E-2 significa 3. 56 / 102 0 0,0356. Al declarar un tipo de datos básico, no debe suponerse que su consumo de memoria es igual a su asignación de almacenamiento nominal. Esto se debe a las consideraciones siguientes: Asignación de almacenamiento.

Common Language Runtime puede asignar el almacenamiento en función de las características ctuales de la plataforma en la que se ejecuta la aplicación. Si la memoria está casi completa, se pueden empaquetar los elementos declarados de la forma más estrecha posible. En otros casos, se podrían alinear la de memoria a los límites del hardware naturales pa podrían alinear las direcciones de memoria a los límites del hardware naturales para optimizar el rendimiento. Ancho de plataforma. La asignación de almacenamiento en una plataforma de 64 bits es diferente a la asignación en una p ataforma de 32 bits.

Tipos de datos compuestos Las mismas consideraciones se plican a cada miembro de un tipo de datos compuesto, como una estructura o una matriz. No se pueden sumar simplemente todas las asignaciones de almacenamiento nominales de los miembros de tipo. Además, existen otras consideraciones, como las siguientes: Sobrecarga. Algunos tipos compuestos tienen requisitos adicionales de memoria. Por ejemplo, una matriz utiliza memoria adicional para la matriz en sí y para cada dimensión. En una plataforma de 32 bits, esta sobrecarga corresponde a 12 bytes y 8 bytes por cada dimensión.

En na plataforma de 64 bits, los requisitos se duplican. Diseño de almacenamiento. No debe suponerse que el orden de almacenamiento en la memoria es igual al orden de declaración. Ni siquiera pueden hacerse predicciones sobre la alineación de bytes, como un límite de 2 bytes o de 4 bytes. Si define una clase o estructura y necesita controlar el diseño de almacenamiento de sus miembros, puede aplicar el atributo StructLayoutAttribute a la clase o estructura. Tomado de: http://msdn. microsoft. com/es-es/library/ffsdktda . aspx 31_1f3