对于 #if 与 #endif ,我主要说一下两种情况:
第一种就是#if 0 与#endif
这一种就相当于/* */的注释作用,在#if 0与#endif之间的内容就会被屏蔽,不会执行;
第二种就是#if 1与#endif
这一种使用之后,在#if 1与#endif之间的代码依然会执行;
大家有没有注意到:如果#if 后面的是0,那么执行#endif后面的代码。反之为1的话,相反。
废话少说,直接上代码:
这里我定义x和y来判断输出结果;
#include<bits/stdc++.h>using namespace std;int main()
{ int a,b,x,y;a=3;b=1;#if 1x=a+b;cout<<x<<" ";#endify=a-b;cout<<y<<" ";return 0;
}//输出结果:4 2#include<bits/stdc++.h>using namespace std;int main()
{ int a,b,x,y;a=3;b=1;#if 0x=a+b;cout<<x<<" ";#endify=a-b;cout<<y<<" ";return 0;
}//输出结果:2