uint16을 uint8 2개로 분할하고 합치기

OpenJR·2022년 11월 4일
0

흠...이걸 왜 하는지 싶은데 1바이트(8비트)씩 정보를 송수신하는 UDT통신에서는 이렇게 나누고 합치는 과정이 필요한 것 같다.

방법은 <<를 사용하는 것이다.

uint16_t a = 921;
uint8_t a_H, a_L;
a_L = a & 255;
a_H = (a >> 8) & 255;
cout << a << endl;
printf("%d %d\n", a_H, a_L);
    
int re_a = (a_H << 8) + a_L;
profile
Jacob

0개의 댓글