黑马-C语言-宏定义

原创 2015年07月08日 15:22:53

1宏定义介绍:

1>定义常量,便于修改(不可在后面加上分号)。

2>.所有预处理指令都是以符号“#”开头.

3>可以出线在代码的任何位置。

2.宏定义初始化

 # define  pai  3.14  (在文件中会把所有的pai在编译之前改为3.14

注:首字母一般大写,在程序中#define中定义的名字(既没有用引号,也不是其它名字的一部分)都将用相应的替换文本替换,其中名字与普通变量名的形式相同,他们都是以字母打头的字母和数字序列,替换文本可以是任何字符序列,而不仅限于数字。

e.g.

#define R 10

int main()

{

    char *s = "Radio";

int a = R;

printf(“%d”,a);

    return 0;

}(只会替换R的值)

3.取消宏定义 #undef


4.带参数的宏定义

#include <stdio.h>

#define PingFang(a) ((a) * (a)) 

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

int b = PingFang(10) / Pow(2); 

printf("%d", b);

return 0;

注:宏定义中参数必须用小括号扩注,并且定义的名称与参数之间不能有空格。

C语言宏定义的几种简单用法

1、计算数组的大小 #define countof(a) (sizeof(a)/sizeof(*(a)))2、转换大小写字母 #define FS_TOUPPER(x) ((((x) >= 'a') ...
  • u011303443
  • u011303443
  • 2016年11月29日 16:49
  • 1975

在C语言中 宏定义是什么?

宏定义是C提供的三种预处理功能的其中一种,这三种预处理包括:宏定义、文件包含、条件编译 宏定义又称为宏代换、宏替换,简称“宏”。 格式:#define 标识符 字符串 其中的标识符就是所谓的...
  • Dallin0408
  • Dallin0408
  • 2015年10月09日 22:42
  • 337

C语言宏定义作用、使用方法小结(2)

要写好C语言,漂亮的宏定义是非常重要的。宏定义可以帮助我们防止出错,提高代码的可移植性和可读性等。   在软件开发过程中,经常有一些常用或者通用的功能或者代码段,这些功能既可以写成函数,也可以封装成...
  • zhao67865
  • zhao67865
  • 2015年10月10日 11:01
  • 925

C语言宏定义的用法

宏定义了一个代表特定内容的标识符。  预处理过程会把源代码中出现的宏标识符替换成宏定义时的值。  宏最常见的用法是定义代表某个值的全局符号。  宏的第二种用法是定义带参数的宏,这样的宏可以象函数...
  • ocean181
  • ocean181
  • 2011年09月25日 09:33
  • 3227

函数式宏定义与普通函数的区别?C语言宏定义和宏定义函数 ?

http://www.jb51.net/article/41869.htm 尽管函数式宏定义和普通函数相比有很多缺点,但只要小心使用还是会显著提高代码的执行效率,毕竟省去了分配和释放栈帧、传参、...
  • changyourmind
  • changyourmind
  • 2016年12月15日 09:42
  • 3634

C语言中常见的宏定义笔试/面试题

转载地址:http://blog.163.com/china_2008ay/blog/static/90142252200961971756712/ 写宏定义:得到一个field在结构体(struc...
  • zjuxsl
  • zjuxsl
  • 2015年03月08日 20:12
  • 1670

详解C语言中的宏定义

1. 防止一个头文件被重复包含  [cpp] view plain copy  print? #ifndef COMDEF_H    #define C...
  • YangT_T
  • YangT_T
  • 2016年06月23日 10:29
  • 2937

C语言中的预编译宏定义

在将一个C源程序转换为可执行程序的过程中, 编译预处理是最初的步骤. 这一步骤是由预处理器(preprocessor)来完成的. 在源流程序被编译器处理之前, 预处理器首先对源程序中的"宏(macro...
  • chinaeran
  • chinaeran
  • 2015年01月14日 16:25
  • 4652

c 语言的宏定义

宏定义有两种:不带参数的宏定义和带参数的宏定义。不带参数的宏定义不带参数宏定义的一般形式为:#define  宏名 字符串#define  PI  3.1415926 main() {float  a...
  • guanchanghui
  • guanchanghui
  • 2006年08月16日 21:46
  • 1391

C语言宏定义的几个坑和特殊用法

总结一下C语言中宏的一些特殊用法和几个容易踩的坑。由于本文主要参考GCC文档,某些细节(如宏参数中的空格是否处理之类)在别的编译器可能有细微差别,请参考相应文档。 宏基础 宏仅仅是在C预处...
  • qq997843911
  • qq997843911
  • 2017年03月14日 14:33
  • 633
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:黑马-C语言-宏定义
举报原因:
原因补充:

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