一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

代碼編程規(guī)范之注釋風(fēng)格

汽車電子技術(shù) ? 來源:大橙子瘋嵌入式 ? 作者: 大橙子瘋 ? 2023-02-15 15:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

這篇重點(diǎn)介紹一下代碼編程的注釋風(fēng)格和注釋文檔生成工具

注釋的原則是有助于對程序的閱讀理解以及提供二次開發(fā)所需文檔,注釋的方式有很多,但是業(yè)內(nèi)常用的規(guī)范是 Doxygen 代碼注釋規(guī)范。遵循原則為,說明性文件、函數(shù)接口必須充分注釋說明。全局變量需要說明功能及取值范圍,需要自行處理資料函數(shù)需要加上使用警告信息。

注意:

  1. 不要使用注釋來屏蔽代碼。
  2. 關(guān)于函數(shù)和局部變量的注釋,當(dāng)代碼已經(jīng)可自注釋時,不用添加多余的注釋。

簡介

Doxygen 規(guī)范簡要的說,Doxygen 注釋塊其實(shí)就是在C、C++注釋塊的基礎(chǔ)添加一些額外標(biāo)識,使 Doxygen 把它識別出來, 并將它通過對應(yīng)得工具生成的說明文檔。

文件注釋

文件注釋通常放在整個文件開頭,如說明文件名、作者、日期、描述或版本等諸多信息,具體參數(shù) Doxygen 的文件注釋風(fēng)格。

1/**
 2 * @file      文件名
 3 * @brief     簡介
 4 * @details   細(xì)節(jié)
 5 * @mainpage  工程概覽
 6 * @author    作者
 7 * @email     郵箱
 8 * @version   版本號
 9 * @date      年-月-日
10 * @license   版權(quán)
11 */

我常用的風(fēng)格如下:

1/**
 2  **********************************************************************************************************************
 3  * @file    adcDrive.c
 4  * @author  const-zpc
 5  * @date    2020-7-20
 6  * @brief   該文件提供ADC驅(qū)動功能,以管理ADC驅(qū)動的以下功能:
 7  *           + 初始化
 8  *           + ADC數(shù)據(jù)
 9  *
10  **********************************************************************************************************************
11  * @attention
12  * 暫無
13  *
14  **********************************************************************************************************************
15  */

類/結(jié)構(gòu)體注釋

類或者結(jié)構(gòu)體定義的注釋方式非常簡單,使用@brief后面填寫類的概述,換行填寫類的詳細(xì)信息

/**
 * @brief   CAN發(fā)送幀類型結(jié)構(gòu)體定義.
 */
typedef struct {
    uint32_t id;      /*!< 幀的標(biāo)識符ID */
    CAN_IdTypeDef emIdType;/*!< 幀的類型 */
    CAN_RtrTypeDef emRtrType;/*!< 幀的格式 */
    uint8_t lenth;      /*!< 幀的數(shù)據(jù)長度 */
    uint8_t data[8];   /*!< 幀的數(shù)據(jù)內(nèi)容 */
} CAN_TxFrameType;

枚舉注釋

/**
  * @brief  CAN使能/禁止枚舉定義
  */
typedef enum{
    CAN_DISABLE = 0,      /*!< (0)禁止 */
    CAN_ENABLE = !CAN_DISABLE/*!< (1)使能 */
}CAN_EnableTypeDef;

/**
 * @brief   CAN幀的格式枚舉定義.
 */
typedef enum {
    CAN_DATA_FRAME = 0,  /*!< (0)數(shù)據(jù)幀 */
    CAN_REMOTE_FRAME   /*!< (1)遠(yuǎn)程幀 */
} CAN_RtrTypeDef;

函數(shù)

1/**
 2  * @brief      讀取指定CAN接收幀的數(shù)據(jù)信息.
 3  *
 4  * @note       建議先調(diào)用函數(shù)...
 5  * @param[in]  rxIndex g_arrtCANRxFrameInfo 的索引值
 6  * @param[in,out] pData - CAN幀數(shù)據(jù)內(nèi)容指針.
 7  * @param[out] pLength - CAN幀數(shù)據(jù)長度.
 8  * @retval     數(shù)據(jù)長度
 9  */
10int CAN_ReadRxFrameInfo(uint16_t rxIndex, uint8_t *pData, uint8_t *pLength)
11{
12    ...
13}

文檔生成軟件

Doxygen 能將程序中的特定批注轉(zhuǎn)換成為說明文檔。他可以依據(jù)程序本身的結(jié)構(gòu),將程序中按規(guī)范注釋的批注經(jīng)過處理生成一個純粹的參考手冊,通過提取代碼結(jié)構(gòu)或借助自動生成的包含依賴圖、繼承圖以及協(xié)作圖來可視化文檔之間的關(guān)系,Doxygen生成的幫助文檔的格式可以是 CHM、RTF、PostScript、PDF、HTML等。

Doxygen是一種開源跨平臺的,以類似JavaDoc風(fēng)格描述的文檔系統(tǒng),完全支持 C、C++、Java、Objective-C 和 IDL 語言,部分支持 PHP、C#。注釋的語法與 Qt-Doc、Kdoc 和 JavaDoc 兼容。Doxygen 可以從一套歸檔源文件開始,生成HTML格式的在線類瀏覽器,或離線LATE、RTF參考手冊。

軟件截圖

圖片

根據(jù)上述定義的注釋通過工具生成文檔部分截圖:

圖片

圖片

圖片圖片圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4893

    瀏覽量

    70445
  • 注釋
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    6592
  • 全局變量
    +關(guān)注

    關(guān)注

    1

    文章

    28

    瀏覽量

    9125
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    MATLAB 編程風(fēng)格指南

    thebeginning.”(良好的寫作規(guī)范的程序比糟糕的寫作規(guī)范的要好,因?yàn)樗麄兙哂休^少的錯誤、易于調(diào)試與修改,因此,從一開始就考慮風(fēng)格是很重要的)。本指南列舉的MATLAB 代碼
    發(fā)表于 09-22 16:19

    FPGA實(shí)戰(zhàn)演練邏輯篇39:代碼風(fēng)格與書寫規(guī)范

    代碼風(fēng)格與書寫規(guī)范本文節(jié)選自特權(quán)同學(xué)的圖書《FPGA設(shè)計(jì)實(shí)戰(zhàn)演練(邏輯篇)》配套例程下載鏈接:http://pan.baidu.com/s/1pJ5bCtt 不同的人可能對代碼
    發(fā)表于 06-19 10:38

    單片機(jī)開發(fā)C語言編程基本規(guī)范

    為了提高源程序的質(zhì)量和可維護(hù)性,從而最終提高軟件產(chǎn)品生產(chǎn)力,特編寫此規(guī)范。本標(biāo)準(zhǔn)規(guī)定了程序設(shè)計(jì)人員進(jìn)行程序設(shè)計(jì)時必須遵循的規(guī)范。本規(guī)范主要針對單片機(jī)編程語言和08編譯器而言,包括排版、
    發(fā)表于 08-09 11:11

    單片機(jī)開發(fā)C語言編程基本規(guī)范

    、變量使用、代碼可測性、程序效率、質(zhì)量保證等內(nèi)容。 1.基本規(guī)則 格式清晰、注釋簡明扼要、命名規(guī)范易懂、函數(shù)模塊化、程序易讀易維護(hù)、功能準(zhǔn)確實(shí)現(xiàn)、代碼空間效率和時間效率高、適度的可擴(kuò)展
    發(fā)表于 09-20 16:39

    單片機(jī)開發(fā)C語言編程基本規(guī)范

    、變量使用、代碼可測性、程序效率、質(zhì)量保證等內(nèi)容。 1.基本規(guī)則 格式清晰、注釋簡明扼要、命名規(guī)范易懂、函數(shù)模塊化、程序易讀易維護(hù)、功能準(zhǔn)確實(shí)現(xiàn)、代碼空間效率和時間效率高、適度的可擴(kuò)展
    發(fā)表于 03-10 10:46

    單片機(jī)開發(fā)C語言編程基本規(guī)范

    規(guī)范主要針對單片機(jī)編程語言和08編譯器而言,包括排版、注釋、命名、變量使用、代碼可測性、程序效率、質(zhì)量保證等內(nèi)容。 1.基本規(guī)則 格式清晰、注釋
    發(fā)表于 08-06 09:46

    單片機(jī)開發(fā)C語言編程基本規(guī)范

    單片機(jī)開發(fā)C語言編程基本規(guī)范為了提高源程序的質(zhì)量和可維護(hù)性,從而最終提高軟件產(chǎn)品生產(chǎn)力,特編寫此規(guī)范。本標(biāo)準(zhǔn)規(guī)定了程序設(shè)計(jì)人員進(jìn)行程序設(shè)計(jì)時必須遵循的
    發(fā)表于 10-07 11:53

    單片機(jī)開發(fā)C語言編程基本規(guī)范

    、變量使用、代碼可測性、程序效率、質(zhì)量保證等內(nèi)容。 1.基本規(guī)則 格式清晰、注釋簡明扼要、命名規(guī)范易懂、函數(shù)模塊化、程序易讀易維護(hù)、功能準(zhǔn)確實(shí)現(xiàn)、代碼空間效率和時間效率高、適度的可擴(kuò)展
    發(fā)表于 10-14 10:23

    單片機(jī)開發(fā)C語言編程基本規(guī)范

    、變量使用、代碼可測性、程序效率、質(zhì)量保證等內(nèi)容。 1.基本規(guī)則 格式清晰、注釋簡明扼要、命名規(guī)范易懂、函數(shù)模塊化、程序易讀易維護(hù)、功能準(zhǔn)確實(shí)現(xiàn)、代碼空間效率和時間效率高、適度的可擴(kuò)展
    發(fā)表于 10-20 09:39

    [分享] 單片機(jī)開發(fā)C語言編程的基本規(guī)范

    規(guī)范主要針對單片機(jī)編程語言和08編譯器而言,包括排版、注釋、命名、變量使用、代碼可測性、程序效率、質(zhì)量保證等內(nèi)容。 1.基本規(guī)則 格式清晰、注釋
    發(fā)表于 04-08 08:00

    Linux內(nèi)核編碼風(fēng)格(編程代碼風(fēng)格推薦)

    這是翻譯版本,英文原版是linux源碼Documentation文件夾下的CodingStyle一個良好風(fēng)格的程序看起來直觀、美觀,便于閱讀,還能有助于對程序的理解,特別在代碼量比較大情況下更顯
    發(fā)表于 08-24 09:45

    如何在代碼中添加注釋

    什么是代碼注釋,如何在代碼中添加注釋,相信每一位了解編程的人并不陌生。注釋里往往有很多有趣的腦洞
    的頭像 發(fā)表于 10-17 10:53 ?1.1w次閱讀

    嵌入式代碼編寫規(guī)范

    嵌入式代碼編碼規(guī)范,用于規(guī)范自己的代碼,增強(qiáng)可讀性,非標(biāo)準(zhǔn)規(guī)范。最好能強(qiáng)制自己形成良好的編碼風(fēng)格
    的頭像 發(fā)表于 04-26 15:21 ?5603次閱讀

    代碼編程規(guī)范命名規(guī)范

    標(biāo)識符的命名規(guī)則歷來是一個敏感話題,典型的命名風(fēng)格如unix風(fēng)格、windows風(fēng)格等,從來無法達(dá)成共識。實(shí)際上,各種風(fēng)格都有其優(yōu)勢也有其劣勢,而且往往和個人的審美觀有關(guān)。對標(biāo)識符定義
    的頭像 發(fā)表于 02-15 14:57 ?1812次閱讀

    代碼注釋,注釋代碼的概念是如何形成的

    "代碼注釋,注釋代碼"這個概念是如何形成的呢?記得之前看一些討論,程序員應(yīng)該如何寫代碼注釋
    的頭像 發(fā)表于 11-18 16:52 ?1065次閱讀
    <b class='flag-5'>代碼</b>即<b class='flag-5'>注釋</b>,<b class='flag-5'>注釋</b>即<b class='flag-5'>代碼</b>的概念是如何形成的