找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
uid:111517 日志

#if、#ifdef、#if defined之間的區(qū)別

熱度 2已有 1010 次閱讀2016-8-10 18:36

#if的使用說明】

    #if的后面接的是表達式

    #if (MAX==10)||(MAX==20) code... #endif

    它的作用是:如果(MAX==10)||(MAX==20)成立,那么編譯器就會把其中的#if #endif之間的代碼編譯進去(注意:是編譯進去,不是執(zhí) 行!。

 

 

#if defined的使用】

    #if后面接的是一個宏。

    #if defined (x) ...code... #endif

    這個#if defined它不管里面的“x”的邏輯是還是它只管這個程序的前面的宏定義里面有沒有定義“x”這個宏,如果定義了x這個宏,那么,編譯器會編譯中間的…code…否則不直接忽視中間的…code…代碼。

    另外 #if defined(x)也可以取反,也就用 #if !defined(x)

 

 

#ifdef#ifndef的使用】

    #ifdef的使用和#if defined()的用法一致

    #ifndef又和#if !defined()的用法一致。

 

最后強調(diào)兩點:

第一:這幾個宏定義只是決定代碼塊是否被編譯!

第二:別忘了#endif

1

路過

雞蛋
1

鮮花

握手

雷人

剛表態(tài)過的朋友 (2 人)

評論 (0 個評論)

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

返回頂部