用vs2019列印巢狀注釋
#include
using
namespace std;
intmain()
本以為會分解為3部分,然後編譯報錯:
/*"*/
" /*"/*"*/
編譯結果是:
/*"*/
"/*"
/*"*/
初步分析,注釋的匹配也是從右向左進行的,下面測試一下:
cout<<
/*/*/**
/<本以為會分解為:
/*內部注釋內容*/
內部注釋內容為:/*/*
結果是最左側的注釋搭配在一起,分解為:
/*內部注釋內容*/
內部注釋內容為:/**
/
所以認為是從左向右就近匹配,下面測試:
cout<<
/* /* /*/*/
<本以為會分解為:
/*/* /*/*/
結果是:
/* /* /*/
*/
綜上分析的話,結果有點匪夷所思,可能因編譯器而有所不同,可能和內部識別雙引號和注釋符號構成元素的優先順序有關。
所以,c++不提倡注釋的巢狀,我們寫注釋的目的就是為了增加**的可讀性,方便開發團隊的溝通,複雜的巢狀沒有什麼意義(可能在實際開發中,巢狀注釋也有應用場景?有沒有大佬來指點一下)。
1 C基礎介紹
1.程式執行 解釋 借助乙個程式,那個程式能試圖理解你的程式,然後按照你的要求執行。編譯 借助乙個程式,就像乙個翻譯,把你的程式翻譯成計算機真正能懂的語言 機器語言 寫的程式,然後,這個機器語言寫的程式就能直接執行了。注意,語言本身沒有解釋和編譯之分,只是執行的方式不同而已。2.c語言在 作業系統 ...
1 C 程式設計基礎
1 c表示c程式檔案的字尾名,cpp表示c 程式檔案的字尾名 編寫的c 程式的字尾名既可以用.c也可以用.cpp 2 在linux環境下,c程式和c 程式都可以用gcc和g 來編譯,區別是gcc編譯器會根據檔案字尾名對函式或變數名做某些修正,乙個是c的編譯方式,乙個是c 的編譯方式。而g 無論是對....
分治 1 C 描述
花了一下午的時間去搞懂演算法筆記上面的那個全排列的問題,看來放鬆時間久了 能力的確會下降的很快 遞迴的概念很簡單,就是乙個函式自己呼叫自己,然後等到呼叫到不可再呼叫時依次從後往前返回值 函式遞迴有兩個特點 遞迴邊界 一般來指函式呼叫到最底層的結果 遞迴式 即遞迴呼叫 如果乙個函式沒有遞迴邊界,會因為...