欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C語(yǔ)言中#和##符號(hào)有什么樣的作用

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

1、#的預(yù)處理作用

預(yù)處理過(guò)程實(shí)質(zhì)上是處理“#”,包括:

將#include包含的頭文件直接拷貝到.c當(dāng)中;

將#define定義的宏進(jìn)行替換;

將#if #else #endif定義的無(wú)用代碼過(guò)濾掉;

將代碼中沒(méi)用的注釋部分刪除等。

從而生成一個(gè)沒(méi)有宏定義、沒(méi)有條件編譯指令、沒(méi)有特殊符號(hào)的輸出文件。

上面中符號(hào)“#”表示這是一條預(yù)處理命令,凡是以“#”開(kāi)頭的一般均為預(yù)處理命令,比如:

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

#define 標(biāo)識(shí)符 被標(biāo)識(shí)符代表的字符串:其中,“define”為宏定義命令,“標(biāo)識(shí)符”為所定義的宏名;

#if #else #endif:是條件編譯命令,加上符號(hào)“#”的作用是:#if是編譯器在編譯代碼時(shí)完成的,if是在程序在運(yùn)行時(shí)完成的,兩者的執(zhí)行時(shí)期不同。

2、#的字符串化作用

符號(hào) # 也稱為字符串化運(yùn)算符(stringify operator 或 stringizing operator),它會(huì)把宏調(diào)用時(shí)的實(shí)參轉(zhuǎn)換為字符串。見(jiàn)下面的代碼示例。

3、##的連接符作用

符號(hào) ## 則是連接符號(hào),由兩個(gè)井號(hào)組成,其功能是在帶參數(shù)的宏定義中將兩個(gè)子串聯(lián)接起來(lái),從而形成一個(gè)新的子串。

代碼示例如下:

#和##的作用

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

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

printf("result_6: %d ", result_6)

程序運(yùn)行結(jié)果則如上圖所示:

result_6: 666

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    180

    文章

    7614

    瀏覽量

    137775
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4830

    瀏覽量

    69090
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1642

    瀏覽量

    49305
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    C語(yǔ)言中void指針的基本認(rèn)識(shí)及典型應(yīng)用

    C語(yǔ)言中,*類型就是指針類型,比如 int *p,double *q,雖然是不一的指針,但是大小卻一sizeof(p) == sizeof(q),因?yàn)樗鼈兌际峭环N類型*類型的。
    發(fā)表于 02-01 09:26 ?1141次閱讀

    單片機(jī)的C語(yǔ)言中位操作用

    單片機(jī)的C語(yǔ)言中位操作用
    發(fā)表于 08-17 15:04

    &符號(hào)C語(yǔ)言中有兩種含義

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

    請(qǐng)問(wèn)C語(yǔ)言中volatile有的作用是什么?

    C語(yǔ)言中volatile什么用作用是什么?看到一個(gè)數(shù)組,別人這樣寫(xiě):volatile unsigned short adc_dma_buf[40];u32 ADCValue_ActC
    發(fā)表于 10-23 22:16

    C語(yǔ)言中定義int a,a是什么類型?

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

    C語(yǔ)言中的坑哪些?

    總結(jié)幾個(gè)C語(yǔ)言中的“坑”
    發(fā)表于 12-28 06:11

    c語(yǔ)言中整數(shù)的取值范圍是多少

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

    c語(yǔ)言中標(biāo)志位什么作用

    c語(yǔ)言中標(biāo)志位什么作用?
    發(fā)表于 10-14 08:05

    C語(yǔ)言中雙下劃線的作用是什么?

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

    C語(yǔ)言中關(guān)鍵字static的作用是什么

    C語(yǔ)言中關(guān)鍵字static的作用是什么?用預(yù)處理指令#define 聲明一個(gè)函數(shù),輸入天數(shù)得到多少秒?
    發(fā)表于 12-24 06:53

    C語(yǔ)言中的指針與數(shù)組分別有哪些作用

    C語(yǔ)言中的指針與數(shù)組分別有哪些作用呢?
    發(fā)表于 02-25 07:20

    C語(yǔ)言中的指針是什么?如何規(guī)避野指針

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

    C語(yǔ)言中鏈表的作用是什么?

    對(duì)C語(yǔ)言中指針用的很少,鏈表、文件操作幾乎沒(méi)用過(guò),所以也不能理解到底什么作用。各位經(jīng)常在做程序時(shí)會(huì)用到這些嗎。
    發(fā)表于 11-06 06:23

    單片機(jī)C語(yǔ)言C語(yǔ)言為什么差異?

    許多小伙伴在學(xué)完C語(yǔ)言后想入門單片機(jī),但學(xué)著學(xué)著發(fā)現(xiàn)明明都是C語(yǔ)言,為什么單片機(jī)C語(yǔ)言和我當(dāng)初學(xué)
    發(fā)表于 09-01 16:39 ?3824次閱讀

    scanf在C語(yǔ)言中作用

    scanf在C語(yǔ)言中作用? scanf是C語(yǔ)言中的輸入函數(shù),用于從標(biāo)準(zhǔn)輸入設(shè)備(如鍵盤)讀取數(shù)據(jù),并將其存儲(chǔ)到變量中。它是
    的頭像 發(fā)表于 11-23 14:13 ?1578次閱讀