在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<s id="cmphk"><label id="cmphk"></label></s>
    <span id="cmphk"><var id="cmphk"></var></span>
    <dfn id="cmphk"><var id="cmphk"></var></dfn>
    <menu id="cmphk"><thead id="cmphk"></thead></menu>

    <address id="cmphk"></address>

      <dfn id="cmphk"></dfn>
      
      
      <span id="cmphk"></span>

      <object id="cmphk"><tt id="cmphk"></tt></object>
      1. 新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > C51單片機編程規(guī)范

        C51單片機編程規(guī)范

        作者: 時間:2012-08-12 來源:網(wǎng)絡(luò) 收藏

        本文引用地址:http://www.biyoush.com/article/171054.htm

        編制函數(shù)的基本原則:
        l 單個函數(shù)的規(guī)模盡量限制在200行以內(nèi)(不包括注釋和空行)。一個函數(shù)只完成一個功能。
        l 函數(shù)局部變量的數(shù)目一般不超過5~10個。
        l 函數(shù)內(nèi)部局部變量定義區(qū)和功能實現(xiàn)區(qū)(包含變量初始化)之間空一行。
        l 函數(shù)名應(yīng)準(zhǔn)確描述函數(shù)的功能。通常使用動賓詞組為執(zhí)行某操作的函數(shù)命名。
        l 函數(shù)的返回值要清楚明了,尤其是出錯返回值的意義要準(zhǔn)確無誤。
        l 不要把與函數(shù)返回值類型不同的變量,以編譯系統(tǒng)默認(rèn)的轉(zhuǎn)換方式或強制的轉(zhuǎn)換方式作為返回值返回。
        l 減少函數(shù)本身或函數(shù)間的遞歸調(diào)用。
        l 盡量不要將函數(shù)的參數(shù)作為工作變量。

        7.2 函數(shù)定義
        l 函數(shù)若沒有入口參數(shù)或者出口參數(shù),應(yīng)用void明確申明。
        l 函數(shù)名稱與出口參數(shù)類型定義間應(yīng)該空一格且只空一格。
        l 函數(shù)名稱與括號()之間無空格。
        l 函數(shù)形參必須給出明確的類型定義。
        l 多個形參的函數(shù),后一個形參與前一個形參的逗號分割符之間添加一個空格。
        l 函數(shù)體的前后花括號{} 各獨占一行。

        7.3 局部變量定義
        l 同一行內(nèi)不要定義過多變量。
        l 同一類的變量在同一行內(nèi)定義,或者在相鄰行定義。
        l 先定義data型變量,再定義idtata型變量,再定義xdata型變量.
        l 數(shù)組、指針等復(fù)雜類型的定義放在定義區(qū)的最后。
        l 變量定義區(qū)不做較復(fù)雜的變量賦值。

        7.4 功能實現(xiàn)區(qū)
        l 一行只寫一條語句。
        l 注意運算符的優(yōu)先級,并用括號明確表達(dá)式的操作順序,避免使用默認(rèn)優(yōu)先級。
        l 各程序段之間使用一個空行分隔,加以必要的注釋。程序段指能完一個較具體的功能的一行或多行代碼。程序段內(nèi)的各行代碼之間相互依賴性較強。
        l 不要使用難懂的技巧性很高的語句。
        l 源程序中關(guān)系較為緊密的代碼應(yīng)盡可能相鄰。
        l 完成簡單功能、關(guān)系非常密切的一條或幾條語句可編寫為函數(shù)或定義為宏。

        8 -排版

        8.1 縮進(jìn)
        代碼的每一級均往右縮進(jìn)4個空格的位置。

        8.2 分行
        過長的語句(超過80個字符)要分成多行書寫;長表達(dá)式要在低優(yōu)先級操作符處劃分新行,操作符放在新行之首,劃分出的新行要進(jìn)適當(dāng)?shù)目s進(jìn),使排版整齊,語句可讀。避免把注釋插入分行中。

        8.3 空行
        l 文件注釋區(qū)、頭文件引用區(qū)、函數(shù)間應(yīng)該有且只有一行空行。
        l 相鄰函數(shù)之間應(yīng)該有且只有一行空行。
        l 函數(shù)體內(nèi)相對獨立的程序塊之間可以用一行空行或注釋來分隔。
        l 函數(shù)注釋和對應(yīng)的函數(shù)體之間不應(yīng)該有空行。
        l 文件末尾有且只有一行空行。

        8.4 空格
        l 函數(shù)語句尾部或者注釋之后不能有空格。
        l 括號內(nèi)側(cè)(即左括號后面和右括號前面)不加空格,多重括號間不加空格。
        l 函數(shù)形參之間應(yīng)該有且只有一個空格(形參逗號后面加空格)。
        l 同一行中定義的多個變量間應(yīng)該有且只有一個空格(變量逗號后面加空格)。
        l 表達(dá)式中,若有多個操作符連寫的情況,應(yīng)使用空格對它們分隔:
        在兩個以上的關(guān)鍵字、變量、常量進(jìn)行對等操作時,它們之間的操作符前后均加一個空格;在兩個以上的關(guān)鍵字、變量、常量進(jìn)行非對等操作時,其前后均不應(yīng)加空格;
        逗號只在后面加空格;
        雙目操作符,如比較操作符, 賦值操作符=、+=,算術(shù)操作符+、%,邏輯操作符、,位操作符、^等,前后均加一個空格;
        單目操作符,如!、~、++、-、(地址運算符)等,前后不加空格;
        ->、.前后不加空格;
        if、for、while、switch等關(guān)鍵字與后面的括號間加一個空格;

        8.5 花括號
        l if、else if、else、for、while語句無論其執(zhí)行體是一條語句還是多條語句都必須加花括號,且左右花括號各獨占一行。
        l do{}while()結(jié)構(gòu)中,do和{均各占一行,}和while();共同占用一行。
        if ( ) do
        { {

        } }while( );
        else
        {

        }



        關(guān)鍵詞: 規(guī)范 編程 單片機 C51

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        ×

        “芯”朋友见面大会
        珠海|11.14|泰克“芯”朋友见面大会珠海站|泰克带您从测试角度看半导体的整条产业链,快来报名抢位吧>>