博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
带参数的宏替换
阅读量:5123 次
发布时间:2019-06-13

本文共 246 字,大约阅读时间需要 1 分钟。

带参数的宏替换因各种需求叠加,替换规则很怪异:

1、首先将实参替换形参,并展开宏

2、如果1步展开后,有#或者##,参数会被加上双引号,导致停止替换。

3、如果1步展开后,没有#或者##,且参数也是宏,那么继续替换,知道参数没有宏为止。

4、执行完1-3后,第一轮替换结束,再次扫描宏,如果外层还有宏,继续替换。

5、简单说:先用实参代替形参,然后继续替换实参内的宏,发现#或##后停止。

转载于:https://www.cnblogs.com/litifeng/p/8424078.html

你可能感兴趣的文章
Python 连接redis密码中特殊字符问题
查看>>
HDU 1231 最大连续子序列 (动态规划)
查看>>
HDU 1087 Super Jumping! Jumping! Jumping! (动态规划、最大上升子序列和)
查看>>
HDU 1159 Common Subsequence (动态规划、最长公共子序列)
查看>>
HDU 1114 Piggy-Bank(动态规划、完全背包)
查看>>
HDU 1160 FatMouse's Speed (动态规划、最长下降子序列)
查看>>
HDU 2809 God of War (状压DP)
查看>>
HDU 1176 免费馅饼 (动态规划、另类数塔)
查看>>
HDU 1171 Big Event in HDU (动态规划、01背包)
查看>>
BUUOJ reverse 刮开有奖
查看>>
BUUOJ reverse 不一样的flag
查看>>
BUUOJ reverse SimpleRev (爆破)
查看>>
HDU 1203 I NEED A OFFER! (动态规划、01背包、概率)
查看>>
HDU 1260 Tickets (动态规划)
查看>>
HDU 1284 钱币兑换问题 (动态规划 背包方案数)
查看>>
BUUOJ misc 二维码
查看>>
2019 徐州icpc网络赛 E. XKC's basketball team
查看>>
Fedora7 安装完全过程
查看>>
计蒜客 《程序设计竞赛体验课程》第一部分 快速提升代码能力
查看>>
Flag counter被博客园禁了的解决方法
查看>>