c语言中 #ifdef ...... 和#endif 配套使用的方法 ?

使用方法:

比如头文件名为keyboard.h。通用的使用方法如下:

#ifndef _KEYBOARD_H

#define _KEYBOARD_H

??

#endif

通过这种方法,当第一次使用这个头文件的c文件,编译时,查看是否定义_KEYBOARD_H

第一次肯定没有,所以它就定义了头文件里面的相关宏以及变量。

第二个使用这个头文件的C文件,编译时,一看_KEYBOARD_H已经存在,说明需要使用的东西使用存在,不需要定义了,直接使用就可以了。

扩展资料:

#ifdef语句1

//程序2

#endif

作用:我们可以用它区隔一些与特定头文件、程序库和其他文件版本有关的代码。

代码举例:新建define.cpp文件

#include<iostream>

using namespace std;

int main(int argc,char*argv[])

{

#ifdef DEBUG

cout<<"Beginning execution of main()"<<endl;

#endif

return 0;

}

运行结果为:

1

Press any key to continue

改写代码如下:

#include<iostream>

using namespace std;

#define DEBUG

int main(int argc,char*argv[])

{

#ifdef DEBUG

cout<<"Beginning execution of main()"<<endl;

#endif

return 0;

}

运行结果为:

Beginning execution of main()

Press any key to continue

更一般的情况是,#define语句是包含在一个特定的头文件中。

比如,新建头文件head.h,在文件中加入代码:

#define DEBUG

#ifdef DEBUG

#endif

而在define.cpp源文件中,代码修改如下:

#include<iostream>

#include"head.h"

using namespace std;

int main(int argc,char*argv[])

{

#ifdef DEBUG

cout<<"Beginning execution of main()"<<endl;

#endif

return 0;

}

运行结果如下:

Beginning execution of main()

Press any key to continue

结论:

通过使用#ifdef指示符,我们可以区隔一些与特定头文件、程序库和其他文件版本有关的代码。

参考资料:

百度百科——#ifdef

百度百科——#endif



扩展阅读:verilog ifdef ... if def ... #if endif ... c语言 #if ... #if和if的区别 ... #ifdef什么意思 ... ifdef的嵌套 ... #elif ... printf c c-32 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网