¡Estos materiales serán útiles para su referencia! Los datos se almacenan en computadoras en ciertos tipos y formatos. Los tipos de datos pueden ser números enteros, números reales, caracteres o gráficos, imágenes, sonidos y vídeos. En lenguaje C, los tipos de datos se pueden dividir en cuatro categorías: tipos de datos básicos, tipos de datos estructurales (incluidas matrices, tipos de enumeración, estructuras y uniones), tipos de puntero y tipos nulos. Esta sección presenta los tipos de datos básicos del lenguaje C: entero, punto flotante y carácter. En lenguaje C, los datos se pueden dividir en constantes y variables. Una constante se refiere a una cantidad cuyo valor no se puede cambiar mientras el programa está en ejecución, mientras que una variable se puede cambiar. 2.2.1 Las constantes enteras son constantes enteras Las constantes enteras comúnmente utilizadas en lenguaje C incluyen hexadecimal, octal y decimal. El prefijo de la constante entera hexadecimal es 0x y el valor numérico es 0 ~ 9, a ~ f (o a ~ f, correspondientes a los números 10 ~ 15 respectivamente). Por ejemplo, 0x1A6, su valor decimal correspondiente es 1×162 161 6×160 = 422. Los siguientes números son constantes enteras hexadecimales legales. 0x25 (37 decimal), 0xB1 (177 decimal), 0xFFFF (65535 decimal). Los siguientes números no son constantes enteras hexadecimales legales: 12 (sin el prefijo 0x, la computadora lo tratará como 12 decimal) y 0x12G (G no es un número hexadecimal legal). Las constantes enteras octales deben tener el prefijo 0 y sus valores son 0 ~ 7. Por ejemplo, 015, su número decimal correspondiente es 1×81 5×80 = 13. Los siguientes números son constantes enteras octales legales. 012 (10 decimales), 0101 (65 decimales), 01000 (512 decimales). Los siguientes números no son números octales legales: 256 (sin prefijo 0), 03A2 (incluidos los números no octales). Las constantes enteras decimales no tienen prefijo y sus valores oscilan entre 0 y 9. Los siguientes números son constantes enteras decimales legales. 237, 65535, 1688. Los siguientes números no son constantes enteras decimales legales. 025 (sin 0 inicial), 88D (contiene dígitos no decimales). Las variables en lenguaje C siguen la regla de "definir primero y luego usar". A continuación se define una variable entera llamada num, luego le asigna un valor de 100 y luego cambia su valor a 200. int numnum = 100; num = 200Int es el tipo básico de variable entera, así como entero corto (short int o short) y entero largo (long int o long). La diferencia es la cantidad de bytes que ocupa la variable cuando se almacena en la memoria. Por lo general, en una computadora de 32 bits, los enteros cortos ocupan 2 bytes, que son 16 bits, y los enteros básicos y largos ocupan 4 bytes, que son 32 bits. Por ejemplo, la siguiente declaración define una variable entera corta I y le asigna un valor inicial de 10 al definirla. short int I = 10; los datos se almacenan en la memoria en forma binaria y el número binario correspondiente al número decimal 10 es 1010. La Figura 2-1 muestra el almacenamiento de la variable I en la memoria. El bit más alto es el bit de signo, 0 es un número positivo y 1 es un número negativo. Figura 2-1 Ejemplo de memoria de la variable I Figura Entero corto ¿Cuál es el rango de una variable entera corta? 6?1215~215?6?11, es decir? 6?132768~32767. Los números representados por números enteros cortos son muy limitados. En aplicaciones prácticas, se suele utilizar el tipo int. ¿Cuál es el rango de valores? 6?1231~231?6?11, es decir? 6?12147483638~2147483637. En algunas aplicaciones prácticas, el valor de una variable suele ser positivo, como el número total de libros en un sistema de gestión de biblioteca y el número de empleados de una empresa en un sistema de información empresarial. Para aprovechar al máximo el rango de representación de la variable, la variable se puede definir como un tipo sin signo en este momento.
Agregar el modificador unsigned puede definir variables sin signo, como unsigned short int i, que define una variable entera corta sin signo I; Unsigned int j define una variable entera sin signo j. De forma predeterminada, la variable definida está firmada, lo que significa que los números pueden ser. positivas o negativas, y las variables con signo también se pueden agregar usando el modificador con signo, pero generalmente no se agregan. El rango de valores del entero corto sin signo es 0 ~ 216, porque el bit más significativo ya no almacena información de signo. 6?11, es decir, 0 ~ 65535. En consecuencia, el número representado por un entero sin signo varía de 0 a 232?6?11, es decir, 0 ~ 4294967295. El número de bytes de memoria que ocupa cada tipo de datos no está especificado en el lenguaje C. La forma de implementarlo lo determina cada sistema informático. En algunas microcomputadoras, tanto los tipos de enteros cortos como los de 16 bits, y los tipos de enteros largos son ambos de 32 bits. El número de bytes en la memoria se puede determinar buscando el operador de recuento de bytes sizeof. El programa del ejemplo 2-2 se puede utilizar para determinar el número de bytes de memoria ocupados por cada tipo de datos. Ejemplo 2-2 #Incluyendo
Utilice notación musical.