Suponga que el tamaño de char es de 1 byte y los negativos se almacenan en forma de complemento a 2
#include<stdio.h> int main() { char c = 125; c = c+10; printf("%d", c); return 0; }
(A) 135
(B) +INF
(C) -121
(D) -8
Respuesta: (C)
Explicación: 125 se representa como 01111101 en binario y cuando sumamos 10, es decir, 1010 en binario, se convierte en: 10000111. Ahora, ¿qué significa representa este numero?
En primer lugar, debe saber que char puede almacenar números solo de -128 a 127, ya que el bit más significativo se guarda para el bit de signo. Por lo tanto, 10000111 representa un número negativo. Para verificar qué número representa, buscamos el complemento a 2 y obtenemos 01111001, que es = 121 en sistema decimal. Por lo tanto, el número 10000111 representa -121.
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA