Ejemplo uso de un entero como un arreglo de caracteres:
#include <stdio.h>
int main() {
int num;
num=0;
( (char *)&num )[0] = 7;
( (char *)&num )[1] = 3;
printf("%i %i\n",( (char*)&num )[0],( (char*)&num )[1]);
*( (char *)&num ) = 2;
*( (char *)&num + 1) = 4;
printf("%i %i\n",( (char*)&num )[0],( (char*)&num )[1]);
printf("%d\n",num);
}
Lo anterior imprime :
7 3
2 4
1026
La variable num queda como 1026 porque:
| 0000 0000 |0000 0000 | 0000 0100 | 0000 0010 |
| 0 | 0 | 4 | 2 |
La idea de este ejemplo es comprender mejor cómo funciona el lenguaje porque en la práctica usar un entero como un arreglo de char no hace que el código sea más simple.
No comments:
Post a Comment