【九月打卡】第21天 【养成记】嵌入式挑战第21天,宏定义的使用
2022/9/26 3:17:15
本文主要是介绍【九月打卡】第21天 【养成记】嵌入式挑战第21天,宏定义的使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
课程信息
课程名称:物联网/嵌入式工程师
章节名称:宏定义的使用
课程内容概述
1. 宏定义
格式: #define 宏名 常量
功能:宏名代替常量,做到见名知意
#define MAX 100
说明:
(1)表示MAX这个符号标识的值是100
(2)编译器会将宏替换成宏后面的内容
2. 宏函数
2.1 概述
#define 宏函数名(参数1,参数2) 表达式
特点:宏都是原样替换
2.2 小技巧
嵌入式开发常用宏操作 do…while(0)
常用于宏函数体语句块不止一条,或者其中嵌入别的逻辑的,弃核形就是提供一对 { }
注:宏定义种do…while的while后面不能加;
3. 字符串化运算符#
#我们常称为字符串化运算符,因为它会把宏调用时的实参转换为字符串。
示例:
#define FUN(x) printf(#x “= %d\n”,x)
FUN(4 + 2)
输出结果: 4 + 2 = 6
4. 不定参数宏
C99标准中规定允许用户定义有省略号的宏,省略号必须放在参数列表的后面,以表示可选参数。
你可以用可选参数来调用这类宏。在代码中用…代表。他们被保存到__VA_ARGS__中.
VA_ARGS_ : 用于在宏替换部分中,表示可变参数列表;
学习心得
C语言中的宏很长用,本节对他的常用及非常用的方式都有了进一步的了解。
他有一个特点,就是原样替换。
课程截图
这篇关于【九月打卡】第21天 【养成记】嵌入式挑战第21天,宏定义的使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-19永别了,微服务架构!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?