C语言 | 预处理 | 宏定义 | #define | 定义函数


此文主要介绍宏定义,并在介绍宏定义时举例介绍预处理命令

预处理

参考:C 预处理器 | 菜鸟教程
重要的预处理器指令如下:

指令 描述
#define 定义宏
#include 包含一个源代码文件
#undef 取消已定义的宏
#ifdef 如果宏已经定义,则返回真
#ifndef 如果宏没有定义,则返回真
#if 如果给定条件为真,则编译下面代码
#else #if 的替代方案
#elif 如果前面的 #if 给定条件不为真,当前条件为真,则编译下面代码
#endif 结束一个 #if……#else 条件编译块
#error 当遇到标准错误时,输出错误消息
#pragma 使用标准化方法,向编译器发布特殊的命令到编译器中

预处理运算符

符号 描述
\ 宏延续运算符。一个宏通常写在一个单行上。但是如果宏太长,一个单行容纳不下,则使用宏延续运算符(\)
# 字符串常量化运算符。在宏定义中,当需要把一个宏的参数转换为字符串常量时,则使用字符串常量化运算符(#)。
## 标记粘贴运算符。宏定义内的标记粘贴运算符(##)会合并两个参数。
defined 预处理器 defined 运算符是用在常量表达式中的,用来确定一个标识符是否已经使用 #define 定义过。

宏定义

define,宏定义,C语言中预处理命令一种。分为无参宏定义和带参宏定义。

无参宏定义的一般形式为:#define 宏名 字符串
带参宏定义的一般形式为:#define 宏名(参数表) 字符串

无参宏定义

C语言中无参宏定义的一般形式为:#define 宏名 字符串

  • 使用#undef 宏名取消已定义的宏
#define MESSAGE "Hello World!"
printf("%s\n",MESSAGE);
#undef MESSAGE 
  • 如果MESSAGE没有定义,则定义MESSAGE为10000
#ifndef MESSAGE
   #define MESSAGE 10000
#endif
printf("%d
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值