C++---宏定义代替函数

1、宏定义与函数的区别

1.1宏定义函数未定义参数类型,任何操作合法的参数类型都可以传进宏定义中,而函数的参数是与类型有关的;自定义函数有明确的参数类型。

1.2宏定义相较于函数,不需要调用栈,运算速度更快

1.3宏定义只是简单的替换,容易发生错误

#define SUM(a,b) a+b
#define SUM_TWO(a,b) (a+b)
int v1  = 10;
int v2  = 20;
int res = 0;
res = SUM(v1,v2)/10;        //本意求(10+20)/10=3,计算结果为 12
res = SUM_TWO(v1,v2)/10;    //计算结果为3 

1.4宏定义会增长程序的长度

2、宏定义与长函数

注意:每一个换行的时候加上一个"\"

#include "stdafx.h"

#define PRINTF(a,b){\
for(int i = a;i < b;i++)\
printf("%d\n",i);\
}\

int main()
{
	int a = 1;
	int b = 10;
	PRINTF(a, b);
	return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值