ポインターを使用して uint16_t 値を uint8_t 配列に挿入しようとしています。以下はうまくいくと思いますが、できませんでした。問題が何であるかについての手がかりはありますか?
uint8_t myarray[10];
uint16_t value = 10000;
uint16_t * myptr = (uint16_t *)(myarray+2);
*myptr = value;
私はそのようにできることを知っていますが、なぜ上記がうまくいかないのですか?
uint8_t myarray[10];
uint16_t value = 10000;
uint8_t * myptr = (myarray+2);
uint8_t * myptr2 =(myarray+3);
*myptr = value>>8;
*myptr2 =value;