如果从stdin运行cpp(GNU C预处理器),如何设置文件名?

时间:2015-08-07 06:46:26

标签: gcc stdin c-preprocessor

我有一个模糊的记忆,gcc用于通过外部预处理器,编译器(正确)和汇编器(似乎不再完成)来管道源代码。由于这个原因,我希望即使您从cpp进行预处理,也可以(仍)设置stdin的文件名。但是我在手册中没有找到任何这样的选项。

请注意,首先__FILE__宏应扩展为当前文件名(默认为"<stdin>"),然后预处理器在包含文件名的输出中插入行指令。

1 个答案:

答案 0 :(得分:0)

虽然不是命令行参数,但您可以在stdin前加一个行指令(即# 1 "<desired-filename>"行)。因此,预处理器将被告知此后的行是所需文件名的第一行。