C语言 #运算符 - C语言零基础入门教程
生活随笔
收集整理的這篇文章主要介紹了
C语言 #运算符 - C语言零基础入门教程
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
目錄
- 一.#運算符簡介
- 二.#運算符使用
- 三.猜你喜歡
零基礎(chǔ) C/C++ 學習路線推薦 : C/C++ 學習目錄 >> C 語言基礎(chǔ)入門
一.#運算符簡介
在 C 語言關(guān)于 define 的文章中我們有介紹到:凡是以 # 開頭的均為預處理指令,預處理又叫預編譯。預編譯不是編譯,而是編譯前的處理。這個操作是在正式編譯之前由系統(tǒng)自動完成的。
/******************************************************************************************/ //@Author:猿說編程 //@Blog(個人博客地址): www.codersrc.com //@File:C語言教程 - C語言 #運算符 //@Time:2021/07/10 08:00 //@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累! /******************************************************************************************/#include<stdio.h>#define FUNC(a,b) printf("a+b=%d \n",((a)+(b)));int main() {FUNC(1,5);FUNC(100,500);return 0; }/* 輸出: a+b=6 a+b=600 */這并不是我們想要的結(jié)果,如果我們想得到的結(jié)果是:
1+5=6 100+500=600可能比較聰明的小伙伴會說,這個簡單:
#define FUNC(a,b) printf("%d+%d=%d \n",(a),(b),((a)+(b)));除了這種方式,我們需要額外介紹一個方式:#運算符
C 語言允許在字符串中包含宏參數(shù),在類函數(shù)宏(帶參宏)中,# 號作為一個預處理運算符,可以把記號轉(zhuǎn)換成字符串。
例如,如果 A 是一個宏形參,那么 #A 就是轉(zhuǎn)換為字符串 A 的形參名。這個過程稱為字符串化(stringizing)。
二.#運算符使用
/******************************************************************************************/ //@Author:猿說編程 //@Blog(個人博客地址): www.codersrc.com //@File:C語言教程 - C語言 #運算符 //@Time:2021/07/10 08:00 //@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累! /******************************************************************************************/#include<stdio.h>//#define FUNC(a,b) printf("#a+#b=%d \n",(a)+(b)); //錯誤寫法#define FUNC(a,b) printf(#a "+" #b "=%d \n",(a)+(b)); //正確寫法int main() {FUNC(1,5);FUNC(100,500);return 0; }/* 輸出: 1+5=6 100+500=600 */注意:
#define FUNC(a,b) printf("#a+#b=%d \n",(a)+(b)); //錯誤寫法 #define FUNC(a,b) printf(#a "+" #b "=%d \n",(a)+(b)); //正確寫法三.猜你喜歡
未經(jīng)允許不得轉(zhuǎn)載:猿說編程 ? C 語言 #運算符
總結(jié)
以上是生活随笔為你收集整理的C语言 #运算符 - C语言零基础入门教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。