如何在宏中将数字连接到字符串?

How to concatenate number to string in macro?

我想在 inno-setup 预处理器宏中将版本号连接到字符串。我尝试像这样使用纵梁技巧(在 C++ 宏中使用):

#define stringer_helper(arg) #arg
#define stringer(arg) stringer_helper(arg)

#define version 1
#define myapp "lala " + stringer(version)

但出现错误:

Illegal character in input file: '#' (0x23)

如何将数字定义附加到字符串定义?

您可以使用 Str 函数对您的整型变量进行类型转换:

#define MyString "Text"
#define MyInteger 666
#define MyVariable MyString + Str(MyInteger)