bit关键词可定义位变量,可用于函数参数、返回值类型。
static bit done_flag = 0; /* 位变量*/
bit testfunc ( /* 返回值类型为位变量 */
bit flag1, /* 参数类型为位变量 */
bit flag2)
{
.
.
.
return (0);
}
位变量位于8051单片机内部RAM位寻址区,由于位寻址区为16字节,因此最多可定义128个位变量。
如果要指定位变量的存储类型,只能使用data 或者idata,其他存储类型声明无效。
bit关键词的使用受限情况:
1)不能声明指向bit变量的指针。
bit *ptr; /* 错误 */
2)不能定义bit类型数组。
bit ware [5]; /* 错误 */
3)使用#pragma disable声明禁用中断的函数,以及使用using n声明的函数,返回值类型不能为bit。