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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2483|回復: 9
打印 上一主題 下一主題
收起左側(cè)

求講解一段單片機程序,for循環(huán)看不懂 謝謝

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:656213 發(fā)表于 2021-10-15 19:06 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
        uint8_t  TmMs[8]     數(shù)據(jù)定義
        for(i=0;i<sizeof(TmMs);i++)                      {                                          
                        if(TmMs[ i])   TmMs[ i]--;
                }
     里面這段for循環(huán)看不懂,后面很多函數(shù)的開頭都用到了這個數(shù)據(jù)。求解釋,謝謝!

51hei圖片_20211015185616.png (19.96 KB, 下載次數(shù): 79)

51hei圖片_20211015185616.png

51hei圖片_20211015185755.png (7.37 KB, 下載次數(shù): 69)

51hei圖片_20211015185755.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:883242 發(fā)表于 2021-10-15 20:23 | 只看該作者
寫這段代碼的顯然不知道sizeof是什么意義,但是不影響執(zhí)行。
回復

使用道具 舉報

板凳
ID:25058 發(fā)表于 2021-10-15 20:32 | 只看該作者
sizeof實際上是獲取了數(shù)據(jù)在內(nèi)存中所占用的存儲空間,以字節(jié)為單位來計數(shù)。
回復

使用道具 舉報

地板
ID:554500 發(fā)表于 2021-10-16 09:37 | 只看該作者
代碼簡化下,你就能看懂了。實際上sizeof(TmMs)=8  ,因為定義數(shù)組的時候已經(jīng)說明了數(shù)組所占內(nèi)存,去看看關(guān)鍵字sizeof的作用
for(i=0;i<8;i++)      //循環(huán)8次 ,訪問數(shù)組 TmMs里的每個成員 1遍 ,每個成員只訪問一遍。         
{                                          
      if(TmMs[ i])   //只要數(shù)組成員不等于0,就減1
        TmMs[ i]--;  //等效于 TmMs[ i]= TmMs[ i ] - 1 ;
  }





//最后運行下來就是:所有不為0的數(shù)組成員都減1

回復

使用道具 舉報

5#
ID:656213 發(fā)表于 2021-10-16 11:57 | 只看該作者
Hephaestus 發(fā)表于 2021-10-15 20:23
寫這段代碼的顯然不知道sizeof是什么意義,但是不影響執(zhí)行。

哈哈,人家可是十多年經(jīng)驗的高級工程師了,你這樣講有點太武斷了。
回復

使用道具 舉報

6#
ID:415064 發(fā)表于 2021-10-16 12:00 | 只看該作者
跟著樓上的,這個應該是利用TmMs做的倒計時機制,有8個定時器,每個定時器都有自己的時間,各自都倒數(shù),為0時說明時間到了,然后去處理相關(guān)業(yè)務,再把時間重置
回復

使用道具 舉報

7#
ID:139866 發(fā)表于 2021-10-16 14:39 | 只看該作者
sizeof是C/C++中的一個操作符(operator),簡單的說其作用就是返回一個對象或者類型所占的內(nèi)存字節(jié)數(shù)。
由于uint8_t一般表示unsigned char,所以i<sizeof(TmMs)實際等效為i<8。
定時器0中斷函數(shù),每進入一次,對TmMs中的8個數(shù)據(jù)內(nèi)容減一,
這樣可以實現(xiàn)同時開始計數(shù),通過設置TmMs內(nèi)的值來結(jié)束計數(shù),
不過不推薦使用TmMs[ i]--,建議TmMs[ i]++;然后在需要使用數(shù)據(jù)的地方判斷TmMs[i]>=Value。
回復

使用道具 舉報

8#
ID:656213 發(fā)表于 2021-10-18 19:43 | 只看該作者
18701931930 發(fā)表于 2021-10-16 09:37
代碼簡化下,你就能看懂了。實際上sizeof(TmMs)=8  ,因為定義數(shù)組的時候已經(jīng)說明了數(shù)組所占內(nèi)存,去看看 ...

這里使用sizeof(TmMs) 這個語句有什么特殊用意嗎,為什么不直接用寫8 ?
回復

使用道具 舉報

9#
ID:965325 發(fā)表于 2021-10-19 08:08 | 只看該作者
本帖最后由 岳耳 于 2021-10-19 08:11 編輯
jiahz2019 發(fā)表于 2021-10-18 19:43
這里使用sizeof(TmMs) 這個語句有什么特殊用意嗎,為什么不直接用寫8 ?

TmMs的長度不僅僅都是8位,這樣寫遇到不同長度的TmMs,也不需要修改代碼也可以繼續(xù)使用改函數(shù)。
回復

使用道具 舉報

10#
ID:656213 發(fā)表于 2021-10-20 10:17 | 只看該作者
謝謝樓上各前輩講解,很有收獲,基本理解了。
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 麻豆精品一区二区三区在线观看 | 欧美午夜一区二区三区免费大片 | 在线视频日韩 | 欧美日韩亚洲在线 | 日本一区二区三区四区 | 亚洲成人午夜电影 | 精品欧美一区二区三区久久久小说 | 国产精品综合一区二区 | 国产色爽 | 色欧美片视频在线观看 | www.国产一区| 日韩一区二区福利 | 国产免费一区二区三区 | 91在线精品一区二区 | 日本黄色大片免费 | 亚洲一区二区三区四区五区中文 | 一区二区在线 | 国产极品粉嫩美女呻吟在线看人 | 九九热精品在线 | 精品一区二区三区四区视频 | 操操操日日日 | 亚洲女人天堂网 | 久久精品一 | 亚洲综合国产精品 | a视频在线观看 | 国产黄色在线观看 | 精品一区二区在线看 | 久久精品免费观看 | 国产成人精品午夜视频免费 | 亚洲一区二区免费电影 | 日本一二三区在线观看 | 97视频人人澡人人爽 | 国内精品视频免费观看 | 一级做受毛片免费大片 | 欧美αv | www.色综合| 成人国产精品视频 | 91久久爽久久爽爽久久片 | 日韩精品久久久久 | 国产成人综合av | 亚洲国产一区在线 |