小编los*_*ang的帖子

如何在宏中转义#

我需要编写一个需要内联汇编的宏

#define create_me(name) \
  __asm\
  mov name,#0x1021\
  __endasm\
Run Code Online (Sandbox Code Playgroud)

# 但是没有编译。我试过将它作为参数传入,但是这也不起作用。它说 invalid preprocessor token 。我可以尝试使用内联函数,但我无法动态创建寄存器名称。那是我无权访问 name 变量。有没有人对如何在宏中使用 # 操作有任何建议。

我看过在#define 宏转义# 符号?,但我已经清楚地解释了为什么我需要这里的宏。我的用例是不同的。

c macros sdcc c-preprocessor

3
推荐指数
1
解决办法
1817
查看次数

标签 统计

c ×1

c-preprocessor ×1

macros ×1

sdcc ×1