比char还小的变量.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct bit_2 {
unsigned char v1 : 2;
//正常一个char在内存中占用8个bit位,但现在只使用前2个.
signed char v2 :
4;
};
void main() {
bit_2 l_test;
l_test.v1
= 8;
l_test.v2 = 8;
printf("%d
",
l_test.v2);
system("pause");
}
假设有10000个这样的灯.
char=0,代表某个灯灭.
char=1,代表某个灯亮.
char
l_arr[10000]
一个char最多可以表示255种状态.
但是我们仅仅需要两种状态就足够了.
一个bit位就够了.
霓虹灯和音乐喷泉.
内存比较小,我们就需要小心谨慎的安排内存的使用.
这就是为什么单片机或者其他嵌入式开发,都是使用C语言的缘故.
因为C语言可以更直接的控制机器的底层细节,充分发挥机器的性能.