久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2849|回復: 6
收起左側

求寫一段簡單循環代碼

[復制鏈接]
ID:242890 發表于 2017-11-12 14:31 | 顯示全部樓層 |閱讀模式
當按鍵按下時,flag=1,當flag=1時,一直循環做某個函數

我是這樣寫的:

void anjian()
{
    if(key==0)
        {
              delay(5); //延時5ms
              if(key==0)
                  flag=1;
        }

}

void main()
{
    anjian();
    while(flag==1)
        {
            **();    //某個函數
        }
}

我這樣寫每次都只是執行一次,只有 while(flag==1) 改成 while(1) 才能無限循環,這是為什么,如果我要用flag的值來循環,應該怎樣寫
回復

使用道具 舉報

ID:212797 發表于 2017-11-12 16:26 | 顯示全部樓層
while(flag==1)的意思是:當flag=1條件成立的時候才能執行循環,flag=0或者等于其他值,這個條件就不成立;
while(1),由于1是一個非零值,邏輯上判斷為真,所以條件一直都是成立的,換句話說,這就是一個死循環,程序會一直在里面循環執行;
main()主函數開始執行后,在那么快的時間內,很難把按鍵按下將flag置1,程序到while之后判斷為假,就會直接跳過,然后停下來不動了。
如果要用flag值做判斷,可以把程序修改為:
void main()
{
    while(1)
     {
           anjian();
           if (flag)
           {
                   **();    //某個函數
           }   
        }
}
回復

使用道具 舉報

ID:225732 發表于 2017-11-12 20:03 | 顯示全部樓層
1、按鍵檢測檢測要在循環中檢測,或者放中斷里檢測
2、flag在按鍵松開要及時置0
以下我為你改動的程序
void anjian()
{
    if(key==0)
        {
              delay(5); //延時5ms
              if(key==0)
                  flag=1;
        }
     else flag=0;   //按鍵松開,flag=0,不執行某個程序
}

void main()
{   
    while(1)
    {
       anjian();   //循環檢測按鍵,你原程序放外邊只會執行一次
       if(flag)
      {
         **();    //某個函數
        }
}
回復

使用道具 舉報

ID:242890 發表于 2017-11-13 12:08 | 顯示全部樓層
包包大人在此 發表于 2017-11-12 20:03
1、按鍵檢測檢測要在循環中檢測,或者放中斷里檢測
2、flag在按鍵松開要及時置0
以下我為你改動的程序

你這樣不對啊,我是要一直循環這個函數,你這樣是按一次動一下
回復

使用道具 舉報

ID:242454 發表于 2017-11-13 16:50 | 顯示全部樓層
FLAG==1,是只有FLAG和1相等的時候才執行WHILE里面的程序,如果只給1那就是一直為真,可以一直死循環
回復

使用道具 舉報

ID:248551 發表于 2017-11-13 18:37 | 顯示全部樓層
void anjian()
{
    if(key==0)
        {
              delay(5); //延時5ms
              if(key==0)
                  flag=1;
        }

}

void main()
{
    flag=1;
    while(flag==1)
        {

          anjian();
            **();    //某個函數
        }
}

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久久久久综合 | 亚洲精品一区在线 | 免费一区二区三区 | 精品亚洲一区二区三区 | 一区中文 | 欧美va大片 | 国产精品一区二区三区在线 | 欧美日韩综合一区 | 成人美女免费网站视频 | 一区精品视频在线观看 | 免费观看一级毛片 | 日韩久久综合网 | 久久久久91 | 欧美理伦片在线播放 | 国产精品久久国产精品久久 | 国产乱码精品一区二三赶尸艳谈 | 日韩图区 | 免费视频久久 | 国产欧美日韩一区 | 精品国产欧美一区二区 | 97avcc| av一级在线观看 | 亚洲大片一区 | 国产成人精品久久二区二区91 | 国产91丝袜在线18 | 精品国产黄色片 | 久草视频观看 | 久久国产成人精品国产成人亚洲 | 亚洲精品久久久一区二区三区 | 国产91精品久久久久久久网曝门 | 男女午夜激情视频 | 亚洲另类自拍 | 日本三级电影在线观看视频 | 精品二区 | 久国久产久精永久网页 | 一区二区三区国产好的精 | 国产三级电影网站 | 欧美成人免费电影 | 亚洲精品国产一区 | 美女爽到呻吟久久久久 | 欧美精品日韩精品国产精品 |