chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

C語言如何注釋以及在哪兒注釋

strongerHuang ? 來源:strongerHuang ? 作者:strongerHuang ? 2022-06-17 09:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如果領(lǐng)導(dǎo)給你一個(gè)項(xiàng)目的源碼讓你閱讀,并理解重構(gòu)代碼,但里面一句注釋都沒有,我想這肯定是之前同事“刪庫跑路”了。 看一份源碼什么很重要?除了各種代碼規(guī)范之外,還有一個(gè)比較重要的就是注釋。 注釋雖然寫起來很痛苦, 但對保證代碼可讀性至關(guān)重要,下面的將描述如何注釋以及在哪兒注釋。

注釋風(fēng)格

1.總述

一般使用///**/,只要統(tǒng)一就好。

2.說明

///**/都可以,但//常用,要在如何注釋及注釋風(fēng)格上確保統(tǒng)一。

文件注釋

1.總述在每一個(gè)文件開頭加入版權(quán)、作者、時(shí)間等描述。 文件注釋描述了該文件的內(nèi)容,如果一個(gè)文件只聲明,或?qū)崿F(xiàn),或測試了一個(gè)對象,并且這個(gè)對象已經(jīng)在它的聲明處進(jìn)行了詳細(xì)的注釋,那么就沒必要再加上文件注釋,除此之外的其他文件都需要文件注釋。 2.說明法律公告和作者信息:每個(gè)文件都應(yīng)該包含許可證引用. 為項(xiàng)目選擇合適的許可證版本(比如, Apache 2.0, BSD, LGPL, GPL)。 如果你對原始作者的文件做了重大修改,請考慮刪除原作者信息。 3.文件內(nèi)容

如果一個(gè).h文件聲明了多個(gè)概念, 則文件注釋應(yīng)當(dāng)對文件的內(nèi)容做一個(gè)大致的說明, 同時(shí)說明各概念之間的聯(lián)系. 一個(gè)一到兩行的文件注釋就足夠了, 對于每個(gè)概念的詳細(xì)文檔應(yīng)當(dāng)放在各個(gè)概念中, 而不是文件注釋中。

不要在.h.cc之間復(fù)制注釋, 這樣的注釋偏離了注釋的實(shí)際意義。

函數(shù)注釋

1.總述函數(shù)聲明處的注釋描述函數(shù)功能; 定義處的注釋描述函數(shù)實(shí)現(xiàn)。 2.說明函數(shù)聲明:基本上每個(gè)函數(shù)聲明處前都應(yīng)當(dāng)加上注釋, 描述函數(shù)的功能和用途. 只有在函數(shù)的功能簡單而明顯時(shí)才能省略這些注釋(例如, 簡單的取值和設(shè)值函數(shù))。 比如:FreeRTOS創(chuàng)建任務(wù)函數(shù)申明:

04658136-edda-11ec-ba43-dac502259ad0.png

函數(shù)定義:如果函數(shù)的實(shí)現(xiàn)過程中用到了很巧妙的方式, 那么在函數(shù)定義處應(yīng)當(dāng)加上解釋性的注釋。比如, 你所使用的編程技巧, 實(shí)現(xiàn)的大致步驟, 或解釋如此實(shí)現(xiàn)的理由. 舉個(gè)例子, 你可以說明為什么函數(shù)的前半部分要加鎖而后半部分不需要。

不要.h文件或其他地方的函數(shù)聲明處直接復(fù)制注釋. 簡要重述函數(shù)功能是可以的, 但注釋重點(diǎn)要放在如何實(shí)現(xiàn)上。

變量注釋

1.總述通常變量名本身足以很好說明變量用途, 某些情況下, 也需要額外的注釋說明。

2.說明根據(jù)不同場景、不同修飾符,變量可以分為很多種類,總的來說變量分為全局變量、局部變量。 一般來說局部變量僅限于局部范圍,其含義相對簡單容易理解,只需要簡單注釋即可。 全局變量一般作用于多個(gè)文件,或者整個(gè)工程,因此,其含義相對更復(fù)雜,所以在注釋的時(shí)候,最好描述清楚其具體含義,就是盡量全面描述。(提示:全局變量盡量少用)

拼音注釋

1.總述可能一個(gè)變量、一個(gè)函數(shù)包含的意思非常復(fù)雜,需要多個(gè)單詞拼寫而成,此時(shí)對拼寫內(nèi)容就需要詳細(xì)注釋。

2.說明注釋的通常寫法是包含正確大小寫和結(jié)尾句號的完整敘述性語句. 大多數(shù)情況下, 完整的句子比句子片段可讀性更高. 短一點(diǎn)的注釋, 比如代碼行尾注釋, 可以隨意點(diǎn), 但依然要注意風(fēng)格的一致性。 同時(shí),注釋中的拼寫、逗號也很重要。雖然被別人指出該用分號時(shí)卻用了逗號多少有些尷尬, 但清晰易讀的代碼還是很重要的. 正確的標(biāo)點(diǎn), 拼寫和語法對此會(huì)有很大幫助

TODO 注釋

1.總述對那些臨時(shí)的, 短期的解決方案, 或已經(jīng)夠好但仍不完美的代碼使用TODO注釋。TODO注釋要使用全大寫的字符串TODO, 在隨后的圓括號里寫上你的名字, 郵件地址, bug ID, 或其它身份標(biāo)識(shí)和與這一TODO相關(guān)的 issue. 主要目的是讓添加注釋的人 (也是可以請求提供更多細(xì)節(jié)的人) 可根據(jù)規(guī)范的TODO格式進(jìn)行查找. 添加TODO注釋并不意味著你要自己來修正, 因此當(dāng)你加上帶有姓名的TODO時(shí), 一般都是寫上自己的名字。

最后

注釋固然很重要, 但最好的代碼應(yīng)當(dāng)本身就是文檔,有意義的類型名和變量名, 要遠(yuǎn)勝過要用注釋解釋的含糊不清的名字。

你寫的注釋是給代碼閱讀者看的, 也就是下一個(gè)需要理解你代碼的人. 所以慷慨些吧, 下一個(gè)讀者可能就是你!

審核編輯 :李倩


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

    關(guān)注

    183

    文章

    7642

    瀏覽量

    144766
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4947

    瀏覽量

    73290

原文標(biāo)題:C語言的注釋要注意幾點(diǎn)

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    請問支持小數(shù)波特率接收數(shù)據(jù)的意義在哪兒?

    我看芯源支持小數(shù)波特率,話說,支持小數(shù)波特率接收數(shù)據(jù)的意義在哪兒?是通訊更有精度嗎?
    發(fā)表于 12-02 07:17

    C語言和單片機(jī)C語言有什么差異

    單片機(jī)c語言相對于普通C語言增加了一些基本的指令,還有變量的賦值是16進(jìn)制,當(dāng)然單片機(jī)c語言只牽
    發(fā)表于 11-14 07:55

    C語言的printf基本用法介紹

    個(gè)小數(shù)。f 是 float 的簡寫。 除了這些,printf 支持更加復(fù)雜和優(yōu)美的輸出格式,考慮到讀者的基礎(chǔ)暫時(shí)不夠,我們將在《C語言數(shù)據(jù)輸出大匯總以及輕量進(jìn)階》一節(jié)中展開講解。 我們把代碼補(bǔ)充完整
    發(fā)表于 11-12 07:04

    第4章 C語言基礎(chǔ)以及流水燈的實(shí)現(xiàn)(4.5 4.6)

    4.5while循環(huán)語句 在單片機(jī)C語言編程的時(shí)候,每個(gè)程序都會(huì)固定的加一句while(1),這條語句就可以起到死循環(huán)的作用。對于while語句來說,他的一般形式是: ? ? ? ?while
    的頭像 發(fā)表于 11-06 11:21 ?148次閱讀

    第4章 C語言基礎(chǔ)以及流水燈的實(shí)現(xiàn)(4.3 4.4)

    4.3 C語言基本運(yùn)算符 小學(xué)數(shù)學(xué)學(xué)過加、減、乘、除等運(yùn)算符號以及四則混合運(yùn)算,而這些運(yùn)算符號在C語言中也有,但是有些表達(dá)方法不一樣,并且還
    的頭像 發(fā)表于 10-29 15:30 ?218次閱讀

    通信電源選購避坑指南:跟著廣州郵科選,省心又省錢!

    “通信電源選不好,基站半夜鬧罷工!”老李是某通信公司的運(yùn)維主管,去年因貪便宜買了雜牌電源,結(jié)果夏天高溫時(shí)連續(xù)3天基站宕機(jī),客戶投訴電話被打爆,差點(diǎn)丟了飯碗。后來換了廣州郵科的電源,用了快兩年,一次故障都沒出過。今天咱們就聊聊通信電源選購的門道,順便看看廣州郵科到底牛在哪兒。
    的頭像 發(fā)表于 10-20 10:32 ?275次閱讀
    通信電源選購避坑指南:跟著廣州郵科選,省心又省錢!

    《ESP32S3 Arduino開發(fā)指南》第三章 C/C++語言基礎(chǔ)

    ++基礎(chǔ),由于篇幅有限,在此僅對C/C++語言基礎(chǔ)進(jìn)行簡單介紹。本章將分為如下9個(gè)小節(jié):3.1 數(shù)據(jù)類型3.2 運(yùn)算符3.3 表達(dá)式3.4 數(shù)組3.5 字符串3.6 注釋3.7 順序結(jié)
    發(fā)表于 06-10 09:20

    深入理解C語言C語言循環(huán)控制

    C語言編程中,循環(huán)結(jié)構(gòu)是至關(guān)重要的,它可以讓程序重復(fù)執(zhí)行特定的代碼塊,從而提高編程效率。然而,為了避免程序進(jìn)入無限循環(huán),C語言提供了多種循環(huán)控制語句,如break、continue和
    的頭像 發(fā)表于 04-29 18:49 ?1771次閱讀
    深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:<b class='flag-5'>C</b><b class='flag-5'>語言</b>循環(huán)控制

    有幾個(gè)關(guān)于MCUXpresso深色主題(模式)設(shè)置的問題求解

    我有幾個(gè)關(guān)于 MCUXpresso 深色主題(模式)設(shè)置的問題。 請參閱附件。 我想修改 C 代碼的注釋顏色和用于在項(xiàng)目資源管理器中突出顯示源文件的顏色。 這些在哪里發(fā)生了變化?
    發(fā)表于 03-20 06:04

    都說上位機(jī)通信難,誰能說說到底難在哪兒

    前言 在工業(yè)自動(dòng)化和物聯(lián)網(wǎng)(IoT)領(lǐng)域,上位機(jī)通信一直被認(rèn)為是開發(fā)過程中的一大難點(diǎn)。上位機(jī)通信扮演著至關(guān)重要的角色。上位機(jī)通常是指負(fù)責(zé)數(shù)據(jù)處理、控制邏輯和用戶界面的計(jì)算機(jī)系統(tǒng),而下位機(jī)則是指執(zhí)行具體任務(wù)的嵌入式設(shè)備或控制器。盡管上位機(jī)通信是連接這兩個(gè)關(guān)鍵組件的核心橋梁,但在實(shí)際應(yīng)用中,常常會(huì)遇到各種挑戰(zhàn)和難題。 然而,經(jīng)過多年的實(shí)踐與探索,逐漸發(fā)現(xiàn)上位機(jī)學(xué)習(xí)的核心無非是三個(gè)關(guān)鍵點(diǎn):編程、通信和項(xiàng)目。在這
    的頭像 發(fā)表于 03-12 16:52 ?875次閱讀
    都說上位機(jī)通信難,誰能說說到底難<b class='flag-5'>在哪兒</b>?

    STM32CUBEide有沒有像KEIL一樣可以自己指定函數(shù)注釋模板的方法?

    最近從keil轉(zhuǎn)到CUBEIDE編程了,現(xiàn)在非常不舒服的一點(diǎn)是函數(shù)注釋方面。STM32CUBEide有沒有像KEIL一樣可以自己指定函數(shù)注釋模板的方法,可以注釋函數(shù)形參啊、函數(shù)返回值說明的方法
    發(fā)表于 03-11 08:06

    stm32cubemx 6.13.0(win)版本生成代碼中文注釋亂碼怎么解決?

    stm32cubemx 6.13.0(win)版本生成代碼中文注釋亂碼
    發(fā)表于 03-11 07:10

    DLP650LNIR芯片安裝部分的三維機(jī)械模型在哪兒下載?

    請問,想設(shè)計(jì)DLP650LNIR部分的板卡,DLP650LNIR芯片安裝部分有一些結(jié)構(gòu)件,在哪能下載到這些三維機(jī)械模型?
    發(fā)表于 02-24 07:25

    用ADS1243采集電壓,2.5V以上對應(yīng)0X7FFFFF,但是其他值就不對,為什么?

    應(yīng)該也不對吧,要是讀錯(cuò)寄存器的話,也該有對應(yīng)默認(rèn)寄存器值啊,但是找不到有對應(yīng)的默認(rèn)值啊, 請專家?guī)臀曳治鲆幌聠栴}可能出在哪兒?
    發(fā)表于 02-12 06:51

    用ADC08500的SDR模式,無論怎么配置DCLK伴隨時(shí)鐘都不正常,是什么原因?

    的DCLK為ADF4360-4clk的二分頻時(shí)鐘頻率,但是時(shí)鐘波形是一個(gè)很尖的脈沖,只有幾百ps。 然后,我有自己人為給它差分時(shí)鐘,也是如此。 不知道問題出在哪兒?
    發(fā)表于 12-30 08:34