预处理宏定义

原创 2011年01月25日 11:18:00

条件编译debug、release版本

微软的编译器定义 _DEBUG 作为debug版本

gcc 定义 DEBUG 作为debug版本。xcode使用gcc,所以也是定义DEBUG,将工程模式设为Debug可以看到GCC_PREPROCESSOR_DEFINITIONS这个变量定义了DEBUG。OTHER_CFLAGS也行,这是直接设定gcc的参数,所以需要使用gcc的语法,比如-DDEBUG。当然最好还是使用xcode提供的预处理宏定义专用变量GCC_PREPROCESSOR_DEFINITIONS。

 

xcode中屏蔽NSLog, NSAssert

没有预处理宏定义用来屏蔽NSLog,如果使用了cocos2d可以使用它的CCLOG代替NSLog,CCLOG内部实现还是调用NSLog,但CCLOG使用预处理宏定义COCOS2D_DEBUG分别处理debug和release版本,debug版本就是NSLog,release版本为空。

对于NSAssert, 使用xcode提供的模板生成release版时会定义OTHER_CFLAGS为-DNS_BLOCK_ASSERTIONS,从而屏蔽NSAssert。使用cocos2d的模板生成的release版貌似没有定义NS_BLOCK_ASSERTIONS,需要自己添加。

 

屏蔽 C 标准库中的assert()

如果定义了 NDEBUG,则assert()函数将不会编译。

 

 

 

相关文章推荐

C++编译预处理:宏定义指令、文件包含指令和条件编译指令

 ◆ 不带参数的宏定义:用来产生与一个字符串(即宏名)对应的常量字符串,格式为:    #define 宏名 常量串 ◆ 带参数的宏定义:带参宏定义的形式很象定义一个函数,格...

C语言必备知识1(预处理,宏定义,内存分配)

C语言预处理 C 预处理器是一个文本替换工具 所有的预处理器命令都是以井号(#)开头。下面列出了所有重要的预处理器指令: 指令    描述 #define    定义宏 #include包含一个源...

预处理:头文件、宏定义、条件编译

一:预处理过程         预处理器将进行宏替换、条件编译和包含指定的文件。以“#”开头的命令行就是预处理器处理的对象。这些命令行可以出现在任何地方,其作用可延续到所在翻译单元的末尾。每一行都会单...
  • gqtcgq
  • gqtcgq
  • 2015年08月30日 21:13
  • 1722

c语言预处理,包含(宏定义,包含,条件编译)

预处理器介绍:就是三个方面,宏定义,文件包含和条件编译 0:预处理是一个小软件,可以在编译器编译程序之前对源程序进行编辑,例如出书之前,编辑线看看你这个书写的通不通顺 1:预处理器可以...
  • Rodulf
  • Rodulf
  • 2016年07月20日 00:52
  • 514

预处理命令以“#”号开头,如包含命令#include,宏定义命令#define等

C语言和C++中#define的用法 2011-09-22 00:00中国IT实验室佚名 关键字:C语言   define是C语言中的预处...

预处理——老大宏定义和使用技巧

所谓预处理是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所做的工作。预处理是C语言的一个重要功能,它由预处理程序负责完成的。对当一个源文件进行编译时,系统将自动引用预处理程序中的预处理部分进行处...

预处理(宏定义、文件包含、条件编译)

预处理(pre-treatment),是指在进行最后加工完善以前进行的准备过程,具体应用在不同的行业或领域,会有不同的解释。       一、含义 程序设计中的预处理(Prepro...

关于预处理和宏定义的知识

预处理是在程序源代码被编译之前,由预处理器(Preprocessor)对程序源代码进行的处理。这个过程并不对程序的源代码进行解析,但它把源代码分割或处理成为特定的符号用来支持宏调用。 C提供的预处理...

C语言-预处理指令1-宏定义

本文目录 预处理指令简介一、不带参数的宏定义二、带参数的宏定义 说明:这个C语言专题,是学习iOS开发的前奏。也为了让有面向对象语言开发经验的程序员,能够快速上手C语言。如果你还没有编程经...
  • smxueer
  • smxueer
  • 2014年10月10日 11:54
  • 673

C 语言 之 预处理-------- 宏定义

1 概述   使用过以“#”号开头的预处理命令。如包含命令# include,宏定义命令# define等。在源程序中这些命令都放在函数之外, 而且一般都放在源文件的前面,它们称为预处理部分。 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:预处理宏定义
举报原因:
原因补充:

(最多只允许输入30个字)