このタイプの値を保存するのは初めてです。ヘッダーフィールドの値はほとんどありません。 2bit = 2,1bit = 1,1 bit = 0,4bit = 13.どのようにしてuint8に順番に格納できますか?私を助けてください。2ビット、1ビット、1ビット、4ビットの値を1バイトの整数に格納する方法
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
int main(void) {
uint8_t m;
uint8_t one, two, three, four;
one = 2;
two = 1;
three = 1;
four = 13;
// do not know how to store,
//assuming m is stored
one = (m >> 7) & 1;
two = (m >> 5) & 3;
three = (m >> 4) & 1;
four = m & 15;
printf("first %i , second %i, third %i, four %i", one, two, three, four);
return 0
}
ます。http://www.catbを。 org/esr/structure-packing / – gj13