我必须逐一打开文件以便在C/C++中读取。文件的名称是in0,in1,in2,in3 ..... 我试图使用预处理器指令来创建文件名。 我想要的东西。用于创建文件名的预处理器指令
for(int i=0;i<n;i++)
{
string inp_file="/path/"+"in"+APPEND(i); //to generate /path/in1 etc
open(inp_file);
}
其中APPEND是MACRO。 由于
#define APP(i) i
可以产生价值
#define APP(i) #i
可以令牌转换为字符串。
我试图在很多方面将它们结合起来,但都失败了。 如何获得想要的结果或者甚至有可能用宏得到这样的结果?
预处理器不能单独用来实现任何运行时功能。单独使用宏来获得这样的结果是不可能的。你所能做的只是将一些到字符串的转换函数包装到一个宏中,但这样做没什么意义。 – AnT