麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

【學(xué)習(xí)筆記】【C語言】條件編譯

2019-11-14 18:45:23
字體:
供稿:網(wǎng)友

1.條件編譯的概念

在很多情況下,我們希望程序的其中一部分代碼只有在滿足一定條件時才進(jìn)行編譯,否則不參與編譯(只有參與編譯的代碼最終才能被執(zhí)行),這就是條件編譯。

2.基本用法

#if 條件1
  ...code1...
 #elif 條件2
  ...code2...
 #else
  ...code3...
 #endif

1>如果條件1成立,那么編譯器就會把#if 與 #elif之間的code1代碼編譯進(jìn)去(注意:是編譯進(jìn)去,不是執(zhí)行,很平時用的if-else是不一樣的)?2> 如果條件1不成立、條件2成立,那么編譯器就會把#elif 與 #else之間的code2代碼編譯進(jìn)去
3> 如果條件1、2都不成立,那么編譯器就會把#else 與 #endif之間的code3編譯進(jìn)去
4> 注意,條件編譯結(jié)束后,要在最后面加一個#endif,不然后果很嚴(yán)重(自己思考一下后果)
5> #if 和 #elif后面的條件一般是判斷宏定義而不是判斷變量,因為條件編譯是在編譯之前做的判斷,宏定義也是編譯之前定義的,而變量是在運(yùn)行時才產(chǎn)生的、才有使用的意義

3.其他用法

1>#if defined()和#if !defined()的用法
#if 和 #elif后面的條件不僅僅可以用來判斷宏的值,還可以判斷是否定義過某個宏。
比如:
#if defined(MAX)
    ...code...
#endif
如果前面已經(jīng)定義過MAX這個宏,就將code編譯進(jìn)去。它不會管MAX的值是多少,只要定義過MAX,條件就成立。

條件也可以取反:
#if !defined(MAX)
    ...code...
#endif
如果前面沒有定義過MAX這個宏,就將code編譯進(jìn)去。

2>#ifdef和#ifndef的使用

#ifdef的使用和#if defined()的用法基本一致
 #ifdef MAX
     ...code...
 #endif
如果前面已經(jīng)定義過MAX這個宏,就將code編譯進(jìn)去。
* #ifndef又和#if !defined()的用法基本一致
 #ifndef MAX
     ...code...
 #endif
如果前面沒有定義過MAX這個宏,就將code編譯進(jìn)去。

4.代碼

 1 #include <stdio.h> 2  3 // 只要寫了#if,在最后面必須加上#endif 4  5 //#define A 5 6  7 int main() 8 { 9 #ifndef A10 //#ifdef A11 //#if !defined(A)12     PRintf("哈哈/n");13 #endif14     15     //int a = 10;16     /*17     if (a == 10)18     {19         printf("a是10/n");20     }21     else if (a == 5)22     {23         printf("a是5/n");24     }25     else26     {27         printf("a其他值/n");28     }*/29     /*30     31 #if (A == 10)32     printf("a是10/n");33 #elif (A == 5)34     printf("a是5/n");35 #else36     printf("a其他值/n");37 #endif38      39      */40     41     return 0;42 }

 

 

 
 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄色大片免费网站 | 国产一区二区三区在线免费 | 免费a观看 | 国产亚洲精彩视频 | 日韩三级伦理在线观看 | 亚洲小视频在线 | 国产成人在线观看网站 | 看免费一级毛片 | 久久91精品国产91久久yfo | 色97在线| 久久毛片 | 啊~用cao嗯力cao烂我视频 | 亚洲国产美女视频 | 55夜色66夜色国产精品视频 | 伊人一二三四区 | 国产成人在线观看免费网站 | 久久精品亚洲精品国产欧美kt∨ | 一级空姐毛片 | 99精品国产在热久久婷婷 | 欧美大穴 | 九九热视频这里只有精品 | 正在播放91精 | 91精品观看91久久久久久国产 | 亚洲国产精品久久久久久久久久久 | 性欧美日本 | 日韩av电影免费在线观看 | 91精品国产综合久久婷婷香 | 亚洲骚综合 | 羞羞视频免费网站 | 久久久www成人免费毛片 | 中文字幕亚洲一区二区三区 | 国产精品久久久久一区二区 | 国产精品久久久久影院老司 | 国产精品一区免费在线观看 | 毛片视频网站 | 精品国产一区二区三区天美传媒 | 欧美高清一级片 | 一级黄色国产视频 | 日韩黄色片免费看 | 亚洲最新黄色网址 | 国产做爰全免费的视频黑人 |