ccs编译以后没有out 宏定义用法?
宏定义用法?
说到宏定义,我们首先应该了解什么是预处理指令。我相信你对它并不陌生。在编写程序之前,程序开头的include指令和define指令都是预处理指令,这使得我们的编译更加高效和方便。因此,用户可以在C语言中添加一些特定的预处理指令。
C语言提供的预处理功能有:宏定义、文件包含、条件编译。今天,我将带大家学习宏定义。宏定义有两种,一种是“无参数宏定义”,另一种是“有参数宏定义”。
1、无参数宏定义
无参数宏定义相对简单,它使用指定的标识符来表示字符串。它的一般形式是;
#define identifier string
它的功能是用这个程序文件中指定的标识符E替换2.71828459。在预处理中,指令后的所有e都被2.7182818459替换。此方法允许用户用简单名称替换长字符串,因此此标识符(名称)称为“宏名称”
在预处理期间用字符串替换宏名称的过程称为“宏扩展”。#Define是宏定义指令。
2、带参数宏定义
带参数宏定义不仅是一个简单的字符串替换,也是一个参数替换。其定义的一般形式是;
#define identifier(macro name)(parameter table)string
该字符串包含括号中指定的参数。
宏定义只占用编译时间,而函数调用占用运行时间(分配单元、保存字段、值传输、返回)。每次执行都必须加载,因此执行速度比宏定义慢。
当宏定义被多次使用时,源程序在宏定义展开后会很长时间,因为每次展开都会使程序增长,但执行速度更快(这不是绝对的)。当宏定义扩展较多时,目标文件很大,执行过程中系统频繁换页,效率较低)。函数调用不会使源程序变长。
什么是宏定义?
宏定义是C提供的三种预处理功能之一,包括宏定义、文件包含和条件编译。宏定义也称为宏替换、宏替换或简称“宏”。格式:#定义标识符字符串,其中标识符是所谓的符号常量,也称为“宏名”。预处理(预编译)也称为宏扩展:用字符串替换宏名称。掌握宏观观念的关键是转变。一切都是以交换为基础的。在做任何事之前,我们应该交换。在准确理解之前,我们应该“交换”。
ccs编译以后没有out 宏定义条件编译 ccs怎么添加编译器
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。