赞
踩
//条件编译:满足条件就编译,不满足就不编译----不等于注释
int main()
{
//1. #if 常量表达式(可以是1,0,1+2,1-2等)+ #endif
#if 1 //#if 1为真,参与编译 #if 0为假,不参与编译---等价于注释
printf("呵呵\n");
#endif
return 0;
}
//2.多个分支的条件编译 #if常量表达式 + #elif常量表达式 + #else常量表达式...+ endif
//一个一个进行判断,上一个为真,就不用考虑下一个了
int main()
{
#if 1==2
printf("呵呵\n");
#elif 2==3
printf("哈哈\n");
#else 3==4
printf("嘿嘿\n");
#endif 4==4
printf("灰灰\n");
return 0;
}
//判断宏是否被定义
//1.#ifdef==if define宏 + #endef宏
int main()
{
#ifdef TEST//如果TEST定义,就参与编译,否则就省略,(像注释一样)
printf("呵呵\n");
#endif
printf("哈哈\n");
return 0;
}
//2.#ifndef==if!define + #endef宏
int main()
{
#ifndef TEST//如果TEST没有被定义,就参与编译,否则就省略,(像注释一样)
printf("呵呵\n");
#endif
printf("哈哈\n");
return 0;
}
//嵌套使用时
#if defined(OS_UNIX)
#ifdef OPTION1
unix_version_option1();
#endif
#ifdef OPTION2
unix_version_option2();
#endif
#elif defined(OS_MSDOS)
#ifdef OPTION2
msdos_version_option2();
#endif
#endif
//引头文件方式#include<> (库文件的包含) 和#include"" (本地文件的包含,自定义)
//本质区别是查找策略的区别
//""查找:1.去自己代码所在的目录下查找,2.如果第一步找不到,则在库函数的头文件目录下查找
//<>查找:自己去库函数头文件所在的目录下查找
//可以用""替代<>的文件,但是反过来不行,,,,,在库里面能用<>就用<>,,,,,自己定义的用""
//防止一个文件被重复多次定义
//1.在文件第一行加上#pragma once
//2. #ifndef __ADD_H__ (ADD_H_是文件名,最好大写)
// #define __ADD_H__
// .....
// .....
// #endif
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。