色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C語言中#和##符號有什么樣的作用

Wildesbeast ? 來源:今日頭條 ? 作者:算法集市 ? 2020-02-24 10:56 ? 次閱讀

1、#的預處理作用

預處理過程實質上是處理“#”,包括:

將#include包含的頭文件直接拷貝到.c當中;

將#define定義的宏進行替換;

將#if #else #endif定義的無用代碼過濾掉;

將代碼中沒用的注釋部分刪除等。

從而生成一個沒有宏定義、沒有條件編譯指令、沒有特殊符號的輸出文件。

上面中符號“#”表示這是一條預處理命令,凡是以“#”開頭的一般均為預處理命令,比如:

#include:是包含頭文件命令,聲明在這個地方插入別的文件中的代碼;

#define 標識符 被標識符代表的字符串:其中,“define”為宏定義命令,“標識符”為所定義的宏名;

#if #else #endif:是條件編譯命令,加上符號“#”的作用是:#if是編譯器在編譯代碼時完成的,if是在程序在運行時完成的,兩者的執行時期不同。

2、#的字符串化作用

符號 # 也稱為字符串化運算符(stringify operator 或 stringizing operator),它會把宏調用時的實參轉換為字符串。見下面的代碼示例。

3、##的連接符作用

符號 ## 則是連接符號,由兩個井號組成,其功能是在帶參數的宏定義中將兩個子串聯接起來,從而形成一個新的子串。

代碼示例如下:

#和##的作用

在上面這個例子中,show(6) 中的 #n 被當成了一個字符串“#6”,與前面的“result_”和后面的“: %d ”連到一起,組成“result_6: %d ”;而 result_##n,則替換為 result_6。

因此,show(6)也就變成:

printf("result_6: %d ", result_6)

程序運行結果則如上圖所示:

result_6: 666

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7614

    瀏覽量

    137431
  • 代碼
    +關注

    關注

    30

    文章

    4823

    瀏覽量

    68899
  • 編譯器
    +關注

    關注

    1

    文章

    1642

    瀏覽量

    49239
收藏 人收藏

    評論

    相關推薦

    C語言中void指針的基本認識及典型應用

    C語言中,*類型就是指針類型,比如 int *p,double *q,雖然是不一的指針,但是大小卻一sizeof(p) == sizeof(q),因為它們都是同一種類型*類型的。
    發表于 02-01 09:26 ?1128次閱讀

    單片機的C語言中位操作用

    單片機的C語言中位操作用
    發表于 08-17 15:04

    &符號C語言中有兩種含義

    &符號C語言中有兩種含義:①取地址;②按位與;問題就來了。本人近期一段程序其中有一條:if(addr&3 != 0)adh_block[addr>>2]2]2]
    發表于 05-25 14:30

    請問C語言中volatile有的作用是什么?

    C語言中volatile什么用作用是什么?看到一個數組,別人這樣寫:volatile unsigned short adc_dma_buf[40];u32 ADCValue_ActC
    發表于 10-23 22:16

    C語言中定義int a,a是什么類型?

    C語言中定義int a[10][10],a是什么類型? 我的理解是a是指向二維整型數組的指針 ,具體這個怎么用?一般都處理什么樣的數據呢??
    發表于 05-25 07:10

    C語言中的坑哪些?

    總結幾個C語言中的“坑”
    發表于 12-28 06:11

    c語言中整數的取值范圍是多少

    c語言中整數的取值范圍,文章目錄1、整數的取值范圍2、版權聲明整數是我們生活中常用的數據類型,也是編程中常用的一種數據,C語言使用int關鍵字來定義整數變量(int是 integer
    發表于 07-20 07:50

    c語言中標志位什么作用

    c語言中標志位什么作用
    發表于 10-14 08:05

    C語言中雙下劃線的作用是什么?

    C語言中雙下劃線的作用是什么?
    發表于 10-19 06:18

    C語言中關鍵字static的作用是什么

    C語言中關鍵字static的作用是什么?用預處理指令#define 聲明一個函數,輸入天數得到多少秒?
    發表于 12-24 06:53

    C語言中的指針與數組分別有哪些作用

    C語言中的指針與數組分別有哪些作用呢?
    發表于 02-25 07:20

    C語言中的指針是什么?如何規避野指針

    C語言中的指針是什么?哪幾種類型?指針作用?如何規避野指針?
    發表于 02-25 06:47

    C語言中鏈表的作用是什么?

    C語言中指針用的很少,鏈表、文件操作幾乎沒用過,所以也不能理解到底什么作用。各位經常在做程序時會用到這些嗎。
    發表于 11-06 06:23

    單片機C語言C語言為什么差異?

    許多小伙伴在學完C語言后想入門單片機,但學著學著發現明明都是C語言,為什么單片機C語言和我當初學
    發表于 09-01 16:39 ?3814次閱讀

    scanf在C語言中作用

    scanf在C語言中作用? scanf是C語言中的輸入函數,用于從標準輸入設備(如鍵盤)讀取數據,并將其存儲到變量中。它是
    的頭像 發表于 11-23 14:13 ?1522次閱讀
    主站蜘蛛池模板: 亚洲AV久久婷婷蜜臀无码不卡 | 最近中文字幕MV免费高清视频8 | 2017欧美狠狠色 | 久久精品亚洲国产AV涩情 | 亚洲人成www在线播放 | 青娱乐极品视觉盛宴国产视频 | 亚洲AV无码乱码A片无码蜜桃 | 成人在线观看播放 | 两个奶被男人揉了一个晚上 | 欧美z000z猪| 日日操夜夜操狠狠操 | 国产亚洲精品高清视频免费 | 中文字幕亚洲欧美日韩2o19 | 永久免费无码AV国产网站 | 国产精品99久久免费黑人人妻 | 被老总按在办公桌吸奶头 | 翘臀后进美女白嫩屁股视频 | 精品视频免费在线 | 国产曰批试看免费视频播放免费 | 国产99久久久欧美黑人刘玥 | 中文字幕AV亚洲精品影视 | 帝王受PLAY龙椅高肉NP | 2019精品国产品在线不卡 | 性按摩AAAAAAA片 | 巨胸美乳中文在线观看 | 强壮的公次次弄得我高潮韩国电影 | 八妻子秋霞理在线播放 | 欧洲最强rapper潮水喷视频 | 一品道门在线观看免费视频 | 女攻男受高h全文肉肉 | 97SE亚洲国产综合自在线不卡 | 给个男人都懂的网址2019 | 色即是空之甜性涩爱 | 手机毛片免费看 | 国产三级级在线电影 | 免费精品美女久久久久久久久久 | 美国xaxwaswaskino 美国VICTORY DAY在线 | 尤物国产在线精品三区 | 日本性hd | 亚洲字幕久久 | 伊人22222|