Red de conocimientos sobre prescripción popular - Remedios caseros - Problema de salida de datos en lenguaje C
Problema de salida de datos en lenguaje C
d- es la salida de datos enteros con signo. El rango de datos enteros cortos con signo es: -32768 ~ 32767.
u- es la forma de salida de datos plásticos sin firmar.
La representación binaria de 16 bits de 32767 es: 0111111165438.
32768 = 0111 111 111 11111111 1 0 = 65438
Si la salida tiene el formato u, el sistema de compilación que uses debería manejarlo así:
(1) Primero, el int corto se convierte implícitamente en un int, que ocupa 2 bytes y 4 bytes, por lo que es necesario extender el bit de signo. Debido a que el bit de signo es 1, los 16 bits superiores del int se extienden con 1, por lo que el valor almacenado en la memoria es:
1111111111111165438.
(2) Debido a que el la salida tiene formato u, el sistema de compilación trata el bit de signo como un bit numérico, por lo que
111111111111165438.
4294934528.