#ifdef-#endif的作用及其使用技巧
1
2
3
|
#ifdef语句1 //程序2 #endif |
1
2
3
4
5
6
7
8
9
|
#include<iostream> usingnamespacestd; intmain(intargc, char *argv[]) { #ifdefDEBUG cout<< "Beginningexecutionofmain()" <<endl; #endif return0; } |
1
|
Pressanykeytocontinue |
1
2
3
4
5
6
7
8
9
10
|
#include<iostream> usingnamespacestd; #defineDEBUG intmain(intargc, char *argv[]) { #ifdefDEBUG cout<< "Beginningexecutionofmain()" <<endl; #endif return0; } |
1
2
|
Beginningexecutionofmain() Pressanykeytocontinue |
1
2
3
|
#defineDEBUG #ifdefDEBUG #endif |
1
2
3
4
5
6
7
8
9
|
#include<iostream> #include"head.h" intmain(intargc, char *argv[]) { #ifdefDEBUG cout<< "Beginningexecutionofmain()" <<endl; #endif return0; } |
1
2
|
Beginningexecutionofmain() Pressanykeytocontinue |
1
2
3
4
5
|
#ifdef标识符 //程序段1 #else //程序段2 #endif |
1
2
3
|
#ifdef标识符 //程序段1 #endif |
1
2
3
4
5
|
#ifdefWINDOWS #defineMYTYPElong #else #defineMYTYPEfloat #endif |
1
|
#defineWINDOWS |
1
|
#defineMYTYPElong |
1
|
#define |
1
2
3
|
#ifdefDEBUG print( "device_open(%p)\n" ,file); #endif |
1
|
#defineDEBUG |
DEBUG”命令即可,这时所有的用DEBUG作标识符的条件编译段都使其中的printf语句不起作用,即起统一控制的作用,如同一个“开关”一样。
1
2
3
4
5
|
#ifndef标识符 //程序段1 #else //程序段2 #endif |
1
2
3
4
5
|
#if表达式 //程序段1 #else //程序段2 #endif |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#defineLETTER1 intmain(intargc, char *argv[]) { charstr[20]= "CLanguage" ; charc; inti=0; while ((c=str[i])!= '\0' ) { i++; #ifLETTER if (c>= 'a' &&c<= 'z' )c=c-32; #else if (c>= 'A' &&c<= 'Z' )c=c+32; #endif printf ( "%c" ,c); } return0; } |
1
|
CLANGUAGE |
1
|
#defineLETTER0 |
1
|
clanguage |
#ifdef-#endif的作用及其使用技巧的更多相关文章
- “#if 0/#if 1 ... #endif”的作用
1. "#if 0/#if 1 ... #endif"的作用,我们知道,C标准不提供C++里的"//"这样的单行风格注释而只提供"/* */" ...
- 头文件里面的ifndef /define/endif的作用
c,c++里面,头文件里面的ifndef /define/endif的作用 今天和宿舍同学讨论一个小程序,发现有点地方不大懂······ 是关于头文件里面的一些地方: 例如:要编写头文件test.h ...
- c语言中“#if 0 / #if 1 ... #endif”的作用
原帖地址:http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=2028608&bbs_page_no=1005&bbs_id=9999 1. ...
- #ifdef __cplusplus extern c #endif 的作用
#ifdef __cplusplus // C++编译环境中才会定义__cplusplus (plus就是"+"的意思) extern "C" { // 告诉编 ...
- 转:C++中 #ifdef 和#endif的作用
一般情况下,源程序中所有的行都参加编译.但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是"条件编译".有时,希望当满足某条件时对一组 ...
- C语言中#ifdef,#ifndef和#endif的作用
现在规定一下头文件书写规范, 根据陈皓编写的跟我一起些makefile,一定要记住:头文件中应该只是声明,而定义应该放在C/C++文件中.否则如果出现有定义,比如头文件中有int a =2;如果有多个 ...
- ifndef/define/endif 和 #ifdef 、#if 作用和用法
为了能简单的看看某些linux内核源码,复习了一下c语音,今天汇总了一下关于宏定义的相关内容: 一.ifndef/define/endif用法: .h文件,如下: #ifndef XX_H #defi ...
- C++中 #ifdef 和#endif的作用
一般情况下,源程序中所有的行都参加编译.但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是"条件编译".有时,希望当满足某条件时对一组 ...
- #ifdef _DEBUG/ #define new DEBUG_NEW/ #endif的作用
转载:https://blog.csdn.net/minghui_/article/details/80748142 转自:#ifdef _DEBUG #define new DEBUG_NEW #e ...
- ifndef/define/endif 的作用
转载自百度百科 ,感谢度娘 1 2 3 #ifdef语句1 //程序2 #endif 可翻译为:如果宏定义了语句1则执行程序2. 作用:我们可以用它区隔一些与特定头文件.程序库和其他文件版本有关的代码 ...
随机推荐
- Django——form组件is_valid校验机制
#先来归纳一下整个流程#(1)首先is_valid()起手,看seld.errors中是否值,只要有值就是flase#(2)接着分析errors.里面判断_errors是都为空,如果为空返回self. ...
- 微信小程序生命周期
微信小程序 生命周期 通俗的讲,生命周期就是指一个对象的生老病死. 从软件的角度来看,生命周期指程序从创建.到开始.暂停.唤起.停止.卸载的过程. 下面从一下三个方面介绍微信小程序的生命周期: 应用生 ...
- 人生要golang
第一篇 : 初识golang 第二篇 : 下载及安装 未完待续 ............................................
- oss2模块和aliyun oss链接
安装oss pip install oss2 首先已经理解OSS 基本概念,如Bucket.Object.Endpoint.AccessKeyId和AccessKeySecret等. 下面介绍如何使用 ...
- ELKK 日志处理
http://blog.csdn.net/u010022051/article/details/54342357 在ELKK的架构中,各个框架的角色分工如下: ElasticSearch1.7.2:数 ...
- [原创]java WEB学习笔记31:会话与状态管理 session机制 概述(定义,session机制,session的声明周期,保存session的方式,Session的创建与删除)
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- 【FLASK模板】set,with语句
# set with 语句 ###set语句:在模板中, 可以使用 ‘set’语句来定义变量, 实例如下: <body> {% set username='zhiliaoketang' % ...
- PostgreSQL基本操作
列出当前数据库所有表 \dt 列出表名 SELECT tablename FROM pg_tables; WHERE tablename NOT LIKE 'pg%' AND tablename NO ...
- java深入探究06
Tomcat中获取资源文件: ServletContext().getRealPath(/WEB-INF/classes/db.properties);//获取资源文件的在服务器中的绝对路径 Serv ...
- Python的标准GUI:Tkinter的组件
Label组件: Label组件用于显示文本和图像,并且使用双重缓冲 用法: 使用Label组件可以指定想要显示的内容(文本.位图或者图片): from tkinter import * master ...