當前位置:
首頁 >
C语言高级编程:接续符‘\‘的用法
發布時間:2023/12/15
29
豆豆
生活随笔
收集整理的這篇文章主要介紹了
C语言高级编程:接续符‘\‘的用法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
接續符(\)表示斷行。
1)編譯器將反斜杠剔除,跟在反斜杠后面的字符自動接續到前一行
2)接續單詞(函數名、關鍵字、變量等)時,反斜杠之后不能有空格,反斜杠下一行之前也不能有空格。如果不是接續單詞,如定義函數宏,反斜杠下一行之前可以有空格,但反斜杠之后最好也沒有空格,否則編譯會產生警告。
3)接續符適合在宏定義代碼塊時使用(不可以不使用,否則編譯會報錯)
測試平臺:64位?X86?Ubuntu
1. 如下編譯通過:
#include<stdio.h> void main() {pri\ ntf("hello world\n"); }2. "ntf"前有空格,編譯會提示錯誤:
#include<stdio.h> void main() {pri\ntf("hello world\n"); } baoli@ubuntu:~/c$ gcc test.c test.c: In function ‘main’: test.c:6:5: error: unknown type name ‘pri’pri\^ test.c:7:9: error: expected declaration specifiers or ‘...’ before string constantntf("hello world\n");^3. 定義函數宏:
#include <stdio.h>#define SWAP(a,b) \ { \int temp = a; \a = b; \b = temp; \ }int main() {int a = 1;int b = 2;int c = 3;SWAP(a,b);printf("a = %d, b = %d\n", a, b);SWAP(b,c);printf("b = %d, c = %d\n", b, c);return 0; }-
定義函數宏時必須加上花括號{},或者采用do-while(0)結構。推薦采用do-while(0)結構
-
#define 指令只能寫在一行,不管用不用花括號都是這樣,要寫到多行必須要用續行符 \,將所有行內容拼接待一行中
-
也可以不用接續符,把他們寫到一行,但是代碼可讀性會非常差!
注意,不能去掉花括號,采用如下的寫法
#define SWAP(a,b) \int temp = a; \a = b; \b = temp;否則編譯會產生錯誤:重復定義temp變量
總結
以上是生活随笔為你收集整理的C语言高级编程:接续符‘\‘的用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 银行利率表2022最新住房贷款利率,房贷
- 下一篇: CF手游vip1-9价格表2020