单片机C语言定义一个标志位,if(标志位)是什么意思?,不懂啊,标志位是bit型数据,非1即0,可以直接判断真假。,这个标志位是在以后的程序里会根据预设的条件设置的,那么if(标志位)就根据标志为状态做运算啊,请教楼主中文:
“标志”是什么意思?
“标志”的那个“位”用来什么?
,标志位是用来判断相应操作是否已经执行或者实践是否发生,如中断标志位,溢出位等
如果中断一次有很多任务需要执行完全,可以在中断子程序中设置一个标志位,在主程序中查这个标志位,当标志为1时,就在主程序中完成这些任务,这样就不会影响其它中断源的中断,也不会使中断产生混乱。
“=” 是赋值,“==”是比较。
你定义了一个位变量,你可以用它来标志任何状态。
这个状态不是自动改变的,而是要你自己改变它。
比如你定义了一个变量i, 你要用它来表示一个灯的开关状态, 1为开,0为关。
检测到灯开时,你的程序里要写 i =1,灯关时写i =0;
当需要根据灯的开或关执行不同的行为时:
if (i ==1){“i =1这里被执行”}else{“i =0这里被执行”};
,标志位是位定义,只有2种状态。0和1.0为假,1为真。if(标志位)就是根据标志位的真假来判断是否执行后面的语句。这是我的理解,同样是小白.,根据标志位决定程序走向。,突然间忘了,但书上有,你可以查查,比方说接电话,定义2个标志位 名字随便起,为了方便就叫 电话铃,用途就是帮你判断程序的状态.
并且规定电话铃响了为1 不响 为0
那么可以这么表达
bit 电话铃 = 0;
while(1)
{
if(!电话铃) //等同于if(电话铃==0)就是电话铃没响.
{
玩游戏;
}
if(电话铃) //等同于 if(电话铃==1),代表电话响了
{
接电话;
电话铃 = 0; //接了后,电话铃当然不响了所以就清0了.
坑游戏里的队友;
接电话直到对方唠叨完……..;
}
},标志位的使用可以在很多地方控制程序的走向,而对标志位的判断只有真假。如果if里没有判断语句,那么就根据标志位数值判断真假:0就是假,非0就是真。如果有判断,就是语句的真假。,
cjm82 发表于 2019-6-5 14:44
比方说接电话,定义2个标志位 名字随便起,为了方便就叫 电话铃,用途就是帮你判断程序的状态.
并且规定电话 …
这个写反了吧