[C con Clase] condición if

Victor J. Morales byktorbx en gmail.com
Mar Sep 22 16:24:46 CEST 2009


Hola muy buen día.

 

0xff  en hexadecimal es igual a 255 en decimal y 11111111 en binario

0x00  en hexadecimal es igual a 0 en decimal  y 00000000

 

Supongamos que a resp[1] sea igual a 0xa en hexadecimal, 10 en decimal y
1010 en binario y la tabla de and es:

 

Tabla de la verdad de AND (&)

A         B         A & B

1          1           1

1          0           0

0          1           0

0          0           0

 

 

Ahora comparando bit a bit:

1 1 1 1 1 1 1 1

         &

0 0 0 0 1 0 1 0 

 

 

Tabla de la verdad de AND (&)

A         B         A & B

1          0           0

1          0           0

1          0            0

1          0           0

1          1           1

1          0           0

1          1           1

1          0           0

 

Por que dará como resultado 1010 en binario y  10 en  decimal y  0xa en
hexadecimal.

 

Como 10 en decimal distinto de cero en decimal entrará al ciclo if.

 

Espero haberte ayudado.

 

Atentamente,

 

 

Shinxuac.

 

 

De: cconclase-bounces en listas.conclase.net
[mailto:cconclase-bounces en listas.conclase.net] En nombre de Susana Sacie
Enviado el: Martes, 22 de Septiembre de 2009 06:32 a.m.
Para: cconclase en listas.conclase.net
Asunto: [C con Clase] condición if

 

la verdad es que no entiendo esta comparación que hace dentro del if :

 

if( (resp[1] & 0xff) != 0x00 ) //donde resp es una cadena de caracteres

 

  ¿cuando se cumplirá?. gracias

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20090922/98aaeca6/attachment.html>


Más información sobre la lista de distribución Cconclase