<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 電子開發 >> 單片機 >> 正文

      單片機c語言規范 談談C51的編程規范

      作者:佚名    文章來源:本站原創    點擊數:    更新時間:2011/2/18

      現在單片機的程序設計,C51已經得到廣泛的推廣和應用,算是單片機的主流設計程序,甚至可以說作為單片機開發人員必須要掌握的一門語言了。

      作為一門工具,最終的目的就是實現功能。在滿足這個前提條件下,我們希望我們的程序能很容易地被別人讀懂,或者能夠很容易地讀懂別人的程序,在團體合作開發中就能起到事半功倍之效。在網上請求幫助時,如能以規范的寫法貼出程序,網友會比較容易地明白你的問題,則會比較快的得到網友的幫助,否則讓人看上半天也不明所以然,這樣就達不到預期的效果了。因此,為了便于源程序的交流,減少合作開發中的障礙,希望大家能夠探討一下C51的編程規范。把各人認為好的建議提出來,然后做一個總結,作為一種大家一致認同的規范,我認為將會是一件很有意義的事。我先提出一些自已的想法,以此拋磚引玉。

      一、注釋

      1,采用中文;
      2,開始的注釋:

      文件(模塊)注釋內容:
      公司名稱、版權、作者名稱、修改時間、模塊功能、背景介紹等,復雜的算法需要加上流程說明;

      比如:

      /*模 塊 名: LCD 模塊 LCD 型號:HD44780 */

      /*創 建 人:zhaojunjie 日期:2001-06-08 */



      /*版 本:

      函數開頭的注釋內容:
      函數名稱、功能、說明輸入、返回、函數描述、流程處理、全局變量、調用樣例等,復雜的函數需要加上變量用途說明;

      /*********************************************************************
      *
      * 函 數 名: v_LcdInit
      * 功能描述: LCD初始化
      * 函數說明: 初始化命令:0x3c, 0x08, 0x01, 0x06, 0x10, 0x0c
      * 調用函數: v_Delaymsec(),v_LcdCmd()
      * 全局變量:
      * 輸 入: 無
      * 返 回: 無
      * 設 計 者:zhao 日期:2001-12-09
      * 修 改 者:zhao 日期:2001-12-09
      * 版 本:
      ***********************************************************************/

      3、程序中的注釋內容:

      修改時間和作者、方便理解的注釋等。注釋內容應簡煉、清楚、明了,一目了然的語句不加注釋。

      二、命名:

      命名必須具有一定的實際意義。

      1、常量的命名:全部用大寫。

      2、變量的命名:
      變量名加前綴,前綴反映變量的數據類型,用小寫,反映變量意義的第一個字母大寫,其他小寫。
      其中變量數據類型:
      unsigned char 前綴 uc signed char 前綴 sc
      unsigned int 前綴 ui signed int 前綴 si
      unsigned long 前綴 ul signed long 前綴 sl
      bit 前綴 b 指針 前綴 p

      例:ucReceivData 接收數據
      3、結構體命名:

      4、函數的命名:
      函數名首字大寫,若包含有兩個單詞的每個單詞首字母大寫。
      函數原型說明包括:引用外來函數及內部函數,外部引用必須在右側注明函數來源:模塊名及文件名, 內部函數,只要注釋其定義文件名;

      三、編輯風格

      1、縮進:縮進以 Tab 為單位,一個 Tab 為四個空格大小。預處理語句、全局數據、函數原型、標題、附加說明、函數說明、標號等均頂格書寫。語句塊的“{”“}”配對對齊,并與其前一行對齊;

      2、空格:數據和函數在其類型,修飾名稱之間適當空格并據情況對齊。關鍵字原則上空一格,如:
      if ( ... ) 等,運算符的空格規定如下:“->”、“[”、“]”、“++”、“--”、“~”、“!”、“+”、“-”(指正負號),“&”(取址或引用)、“*”(指使用指針時)等幾個運算符兩邊不空格(其中單目運算符系指與操作數相連的一邊),其它運算符(包括大多數二目運算符和三目運算符“?:”兩邊均空一格,“(”、“)”運算符在其內側空一格,在作函數定義時還可據情況多空或不空格來對齊,但在函數實現時可以不用。“,”運算符只在其后空一格,需對齊時也可不空或多空格,對語句行后加的注釋應用適當空格與語句隔開并盡可能對齊。

      3、對齊:原則上關系密切的行應對齊,對齊包括類型、修飾、名稱、參數等各部分對齊。另每一行的長度不應超過屏幕太多,必要時適當換行,換行時盡可能在“,”處或運算符處,換行后最好以運算符打頭,并且以下各行均以該語句首行縮進,但該語句仍以首行的縮進為準,即如其下一行為“{”應與首行對齊。

      4、空行:程序文件結構各部分之間空兩行,若不必要也可只空一行,各函數實現之間一般空兩行

      5、修改:版本封存以后的修改一定要將老語句用封閉,不能自行刪除或修改,并要在文件及函數的修改記錄中加以記錄。

      6、形參:在定義函數時,在函數名后面括號中直接進行形式參數說明,不再另行說明。

      Tags:單片機,c語言教程,規范  
      責任編輯:admin
      請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 亚洲伊人久久综合影院| 久久久久久久尹人综合网亚洲| 国产91久久综合| 奇米综合四色77777久久| 亚洲综合丁香婷婷六月香| 开心婷婷五月激情综合社区| 青青草原综合久久大伊人导航| 色婷婷狠狠久久综合五月| 亚洲综合无码AV一区二区| AV色综合久久天堂AV色综合在| 婷婷综合久久中文字幕蜜桃三| 亚洲综合区小说区激情区 | 久久综合久久综合久久综合| 综合国产在线观看无码| 91精品一区二区综合在线| 狠狠爱天天综合色欲网| 伊人色综合一区二区三区| 一本色道久久88亚洲精品综合| 国产综合色产在线精品| 色欲天天天综合网| 91精品国产综合久久青草| 国产91久久综合| 91精品国产综合久久久久久| 狠狠综合久久av一区二区 | 色综合无码AV网站| 亚洲国产精品综合久久久| 国产精品综合色区在线观看| 亚洲色偷偷偷综合网| 久久综合久久自在自线精品自| 综合国产精品第一页| 综合国产在线观看无码| 狠狠色丁香婷婷综合激情| 国产成人AV综合久久| 亚洲综合另类小说色区| 精品亚洲综合在线第一区| 亚洲AV综合色区无码另类小说| 激情五月激情综合网| 激情综合一区二区三区| 久久九九精品国产综合喷水| 久久婷婷五月综合色高清| 天天爱天天做色综合|