首页 > 其他 > 详细

各种预处理命令 笔记 #if #else #elif #define #undef

时间:2020-01-28 21:26:38      阅读:108      评论:0      收藏:0      [点我收藏+]

 

#if 要求判断条件为常量表达式,不得包含变量。且返回值为整数。

与 #else #elif #endif 使用。

和 if else 的用法类似。

例如:

 1 #include <stdio.h>
 2 
 3 #define M 100
 4 
 5 int main(){
 6 
 7     #if M==100
 8         printf("already\n");
 9     #else
10         #undef M
11         #define M 10
12     #endif // M
13     printf("%d\n", M);
14     return 0;
15 }

 

运行结果: already 

      100

#ifdef 用来判断某个宏是否定义,如果已定义则执行后面的代码。

用法:

1 #ifdef  宏名
2 
3     程序段 1
4 
5 #else 
6     
7     程序段 2
8 
9 #endif

类似if的用法,若宏被定义,则执行程序段1,否则执行程序段2。

小知识:

//宏定义 #ifdef _WIN32 是由编译器(ml.exe/ml64.exe)内部定义的。

//_WIN32:Defined for applications for Win32 and Win64. Always defined.

//用来判断是否是WINDOWS平台

技术分享图片
 1 #include <stdio.h>
 2 
 3 #define M 100
 4 
 5 int main(){
 6 
 7     #ifdef M
 8         printf("%d\n", M);
 9     #else
10         #undef M
11         #define M 10
12     #endif // M
13 
14     return 0;
15 }
康康代码

 

未完

各种预处理命令 笔记 #if #else #elif #define #undef

原文:https://www.cnblogs.com/Arrokoth/p/12238769.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!