带参数的宏定义、函数与内联函数

本文围绕C语言展开,介绍了宏定义、函数和内联函数。宏定义是预编译时的文本替换,有增强交互体验等优点,但会增加代码量;函数通过指针调用,执行前有安全检查;内联函数兼具二者特点,代码放入符号表,使用时直接替换,调用时也会检查参数类型。


前言

在实际项目开发,尤其是嵌入式软件项目中,经常可以看到大量宏定义的分布,其中又多以带参数的宏定义为主。对于刚入门的小白来说,这可能也算是C语言的高级用法之一。当然,它的用处也确实相当广泛。
带参数的宏,它的功能类似于函数。在多数场景当中,它的目的也是旨在能够一定程度上取代部分的函数调用。
以上两种方式并存,但各自都有优缺点,也因此,inline函数诞生。它可以说是兼具了函数和带参数的宏定义优缺点于一身的产物。


“存在即合理” --黑格尔《法哲学原理》

一、宏定义

1.基本用法

在预编译过程中无条件文本替换:

#include<stdio.h>

#define OKAY			0
#define OVERFLOW		1
#define UNDERFLOW		2
#define MAX				10
#define MIN				5

void main()
{
   
   
	unsigned char InputVal	= 0;
	unsigned 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值