欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺談C語言中的注釋風格小結(jié)

 更新時間:2019年12月20日 10:03:38   作者:grey_csdn  
今天小編就為大家分享一篇淺談C語言中的注釋風格小結(jié),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

C語言中常用的注釋風格有兩種,一種是通過如下模式進行一段代碼的注釋:

/* comment*/

另一種是單行注釋符號:

// comment

學生時代的注釋我一般是選用后者,那時候編碼量十分有限,即使是簡單的小段落注釋使用的IDE也支持批量添加單行注釋符。而在編碼之中,簡單的單行注釋進行注釋的時候鍵盤的操作更為簡單一點。

不過,工作之后接觸了相應(yīng)的編碼規(guī)范之后,C語言的注釋我基本上放棄了單行注釋的方法,最多僅僅在調(diào)試的時候做簡單的使用。

其實,單行注釋是從C++中借鑒來的,算是C++風格的注釋方式。而這種方式在C語言中有時候會帶來一定的差異性,甚至是引入難以察覺的Bug。把我自己從網(wǎng)絡(luò)或者書籍中看到的兩個比較典型的方式列述總結(jié)一下。

示例1:

#include"stdio.h"
 
int main(void)
{
    int a = 0;
 
    a += 5; \
    a = 123;
 
    printf("value of a: %d\n",a);
 
    return 0;
}

代碼的編譯運行結(jié)果如下:

E:\WorkSpace\01_編程語言\01_C語言\exp_26>gcc exp_26.c

E:\WorkSpace\01_編程語言\01_C語言\exp_26>a

value of a: 123

代碼其實很簡單,第一次對a進行的數(shù)值修改其實是一個沒用的冗余代碼。如果發(fā)現(xiàn)類似的問題,可能進行一下簡單的屏蔽,修改代碼如下:

#include"stdio.h"
 
int main(void)
{
    int a = 0;
 
    //a += 5; \
    a = 123;
 
    printf("value of a: %d\n",a);
 
    return 0;
}

代碼的編譯運行結(jié)果如下:

E:\WorkSpace\01_編程語言\01_C語言\exp_26>gcc exp_26.c

E:\WorkSpace\01_編程語言\01_C語言\exp_26>a

value of a: 0

這個結(jié)果很多時候會出乎很多人的意料,因為發(fā)現(xiàn)結(jié)果居然不再是123!其實,原因就在于屏蔽的那一行代碼最后面多了一個續(xù)行的符號。這樣使得注釋的作用持續(xù)到了下一行。其實,很多編譯器在這方面都會有相對精準的判斷給出提示,比如說我最近在使用的VIM就能夠通過顏色的變化提示出第二行也被注釋掉了。而擅長語義分析的Source Insight在這方面倒是沒有做好,不知道最新推出的V4版本中是否對此有所改進。

示例2:

#include"stdio.h"
 
int main(void)
{
    int a = 123;
    int b = 23;
    int c;
 
    c = a //*
           //*/b
    ;
   
    printf("value of c:%d",c);
 
    return 0;
}

從《C專家編程》中摘出了這個例子,按照書中的介紹,c的賦值運算相關(guān)3行在C語言中表示a/b而在C++中表示a。不過,或許是成書時間比較早,自我我的機器以及軟件上,這個說法顯然是不成立了。即使是咋C語言中,上面的表達式也是表示c = a。不過,程序的可讀性確實是給了我們一個不小的挑戰(zhàn)。我專門注意了一下編輯器對此的識別,在此環(huán)節(jié)中,VIM以及Source Insight全都識別準確。值得一提的是,前面的這兩個例子如果使用NotePad ++,編輯器的提示也全都是準確的。

代碼的編譯執(zhí)行結(jié)果如下:

E:\WorkSpace\01_編程語言\01_C語言\exp_27>gcc exp_27.c

E:\WorkSpace\01_編程語言\01_C語言\exp_27>a

value of c:123

由此看來,很多嵌入式的編碼規(guī)范中要求不能夠用C++單行注釋風格的注釋方式還是有一定道理的。雖說是帶來了一定的不方便,但是確實是能夠避免一些小問題的出現(xiàn)。

以上這篇淺談C語言中的注釋風格小結(jié)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C語言編程題楊氏矩陣算法快速上手示例詳解

    C語言編程題楊氏矩陣算法快速上手示例詳解

    這篇文章主要為大家介紹了C語言編程題楊氏矩陣算法快速上手的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2021-10-10
  • C++中 靜態(tài)局部變量實例詳解

    C++中 靜態(tài)局部變量實例詳解

    這篇文章主要介紹了C++中 靜態(tài)局部變量實例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • 淺談C++中virtual的三種用法

    淺談C++中virtual的三種用法

    這篇文章主要介紹了淺談C++中virtual的三種用法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • C語言八道筆試題精講帶你掌握指針

    C語言八道筆試題精講帶你掌握指針

    C語言這門課程在計算機的基礎(chǔ)教學中一直占有比較重要的地位,然而要想突破C語言的學習,對指針的掌握是非常重要的,本文將具體針對指針的基礎(chǔ)做詳盡的介紹
    2022-07-07
  • 一文詳解C++11中decltype的使用

    一文詳解C++11中decltype的使用

    這篇文章主要為大家分享了C++11中decltype關(guān)鍵字的使用示例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2023-07-07
  • C語言操作符基礎(chǔ)知識詳解

    C語言操作符基礎(chǔ)知識詳解

    這篇文章主要以圖文結(jié)合的方式為大家詳細介紹了C語言位運算基礎(chǔ)知識,感興趣的小伙伴們可以參考一下,希望能給你帶來幫助
    2021-10-10
  • C語言time.h庫函數(shù)的具體用法

    C語言time.h庫函數(shù)的具體用法

    C語言的time.h頭文件提供了一系列的函數(shù)和工具,用于處理時間和日期相關(guān)的操作,本文主要介紹了C語言time.h庫函數(shù)的具體用法,感興趣的可以了解一下
    2023-12-12
  • MFC對話框中實現(xiàn)走馬燈效果

    MFC對話框中實現(xiàn)走馬燈效果

    這篇文章主要為大家詳細介紹了MFC對話框中實現(xiàn)走馬燈效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • 嵌入式C語言輕量級程序架構(gòu)內(nèi)核編寫

    嵌入式C語言輕量級程序架構(gòu)內(nèi)核編寫

    這篇文章主要介紹了嵌入式C語言輕量級程序架構(gòu)內(nèi)核編寫,文章將讓大家學到輕量級程序架構(gòu)的內(nèi)核實現(xiàn)原理、輕量級程序架構(gòu)的設(shè)計思想、了解單片機常用的程序架構(gòu)等更多C語言輕量級程序架構(gòu)相關(guān)內(nèi)容,需要的朋友可以參考一下
    2022-03-03
  • C語言中全局數(shù)組和局部數(shù)組的問題

    C語言中全局數(shù)組和局部數(shù)組的問題

    今天同學遇到一個在C語言中全局數(shù)組和局部數(shù)組的問題,卡了許久,我也沒有第一時間看出問題,現(xiàn)在把問題梳理一下,并給出解決方案,需要的朋友可以參考下
    2012-12-12

最新評論