比char还小的变量

比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\n", l_test.v2);
 system("pause");

}

假设有10000个这样的灯.
char=0,代表某个灯灭.
char=1,代表某个灯亮.

char l_arr[10000]

一个char最多可以表示255种状态.
但是我们仅仅需要两种状态就足够了.

一个bit位就够了.

霓虹灯和音乐喷泉.
内存比较小,我们就需要小心谨慎的安排内存的使用.

这就是为什么单片机或者其他嵌入式开发,都是使用C语言的缘故.
因为C语言可以更直接的控制机器的底层细节,充分发挥机器的性能.

posted @ 2017-12-25 20:35  随意就好欧巴  阅读(243)  评论(0编辑  收藏  举报