續行符小記

2021-08-08 04:36:37 字數 699 閱讀 7411

在c中,有時因為**太長會導致其無法在一行中寫下(比如巨集定義),此時便需要續行符的使用了,「\」便是c中的續行符,最好在它的後面直接新增回車,在下一行再新增注釋這一類「雜物」,來提高程式的可理解性。

一般而言,續行符較多地是被用於巨集定義中,為了便於人們對巨集的理解。

比如說:#define somefun(x,a,b) if(x)x=a+b;else x=a-b;

上述**的理解便比較難,而使用續行符對之進行修飾後,**的可讀性就增加了。

#define somefun(x,a,b)\

if(x)\

x=a+b;\

else \

x=a-b;

但續行符其實是連線到了下一行的開始地方,如果在下一行的開頭用空格來將函式的格式對齊,有時便會造成意料外的結果。

比如下列巨集定義:

#define xx_debug(fmt,arg...)   printf("\033[41;32m <>[%s]\

[%d]\033[0m \033[34m"fmt"\033[0m\n",__function__,__line__, ##arg)

其執行結果便為:

因此,換行符的後接空格需要考慮到。

改變printf的字型的詳細資訊見另一篇部落格:

mysql續行符是什麼 shell續行

linux下命令列的引數可能會很長,特別編譯安裝程式的時候的configure引數。如果直接寫在一行,書寫起來很長,看起來也不美觀還容易漏項。自然就會想到如何將shell的一行命令拆成多行去執行。shell已經為我們準備好了這個續行符 來把一行命令分解成多行 shell命令列下反斜線 有兩種含義 1...

巨集定義 續行符

續行符 巨集定義規定,巨集定義必須在一行裡完成。所以用 define定義巨集定義時,有時為了閱讀方便,就加續行符 來換行。在普通 行後面加不加都一樣 vc是自動判斷續行的 例如 define somefun x,a,b if x x a b else x a b 這一行定義是沒有問題的,但是這樣 很...

反斜槓「 」續行符

的正式的名稱叫做續行符,在普通 行後面加不加都一樣 vc是自動判斷續行的 但是在巨集定義裡面就特別有用,因為巨集定義規定必須用一行完成 define somefun x,a,b if x x a b else x a b 這一行定義是沒有問題的,但是這樣 很不容易被理解,以後維護起來麻煩,如果寫成 ...