Salut tout le monde,
Je comprends pas le comportement d'un bout de code:
Le resultat:
Code C : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 #include <stdio.h> #include <stdint.h> const uint16_t data[512] = {0x0800,0x0833,0x0867,0x089A,0x08CE,0x0901,0x0934,0x0966, 0x0999}; void main(){ for (int i=0; i<8; i++) printf("%04X ", data[i]); printf("\r\n"); uint8_t* arr = (uint8_t*)data; for (int i=0; i<16; i++) printf("%02X ", arr[i]); }
0800 0833 0867 089A 08CE 0901 0934 0966
00 08 33 08 67 08 9A 08 CE 08 01 09 34 09 66 09
Le probleme est dans le deuxieme print. Notez le 1er byte manquant et le byte "09" apres "CE" qui devient "08" !!
Merci pour votre aide.
Partager