C语言 (条件编译#ifdef、#ifndef) (#if 常量,#if 1,#if 0)的用法
生活随笔
收集整理的這篇文章主要介紹了
C语言 (条件编译#ifdef、#ifndef) (#if 常量,#if 1,#if 0)的用法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
當屏蔽掉大塊代碼時,使用"#if 0"比使用"/**/"要好,因為用"/**/"做大段的注釋要防止被注釋掉的代碼中有嵌套的"/**/",這會導致注釋掉的代碼區(qū)域不是你想要的范圍,當被注釋掉的代碼很大時容易出現(xiàn)這種情況,特別是過一段時間后又修改該處代碼時更是如此。
文章目錄
- 不嵌套情況
- 1. 情況1:
- 2.情況2:
- 3.情況3:
- 二、 嵌套情況
- 1、情況1
不嵌套情況
1. 情況1:
#ifdef _XXXX...程序段1...#else...程序段2...#endif這表明如果標識符_XXXX已被#define命令定義過則對程序段1進行編譯;否則對程序段2進行編譯。
2.情況2:
#ifndef _XXXX...程序段1...#else...程序段2...#endif這里使用了#ifndef,表示的是if not def。當然是和#ifdef相反的狀況(如果沒有定義了標識符_XXXX,那么執(zhí)行程序段1,否則執(zhí)行程序段2)。
3.情況3:
#if 常量...程序段1...#else...程序段2...#endif這里表示,如果常量為真(非0,隨便什么數(shù)字,只要不是0),就執(zhí)行程序段1,否則執(zhí)行程序段2。
二、 嵌套情況
1、情況1
#if 常量a...程序段1... #else#if 常量b...程序段2...#else...程序段3...#endif#endif這里表示,如果常量a為真(非0,隨便什么數(shù)字,只要不是0),就執(zhí)行程序段1。當常量a為0,常量b為真時,執(zhí)行程序段2;
當常量a為0,常量b為0時,執(zhí)行程序段3;
參考文章:#if 0/#if 1用法
總結
以上是生活随笔為你收集整理的C语言 (条件编译#ifdef、#ifndef) (#if 常量,#if 1,#if 0)的用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言多线程教程(pthread)(线程
- 下一篇: 电脑物理内存与虚拟内存的区别与关系