明天我有一家公司的考试。我的文件必须易于使用Coliru(Web编译器)进行编译:http://coliru.stacked-crooked.com/
但这是我的问题:"如何在Coliru中使用多个文件?"我读了Q& A但没有成功。
这是我想测试的程序:
#include <stdlib.h>
#include <stdio.h>
//MyLibraries
#include "Addition.c"
int main(int argc, char * argv[])
{
Addition();
return EXIT_SUCCESS;
}
这是我的&#34; Addition.c&#34;档案:
#include <stdio.h>
#include <stdlib.h>
void Addition(int a, int b);
void Addition(int a, int b)
{
printf("%d", (a + b));
}
如果有人可以向我解释如何使用Coliru编译多个文件,它会非常棒。 THX
答案 0 :(得分:0)
Coliru问题跟踪器中有this comment,它提出了以下建议。
==> Makefile <==
main.cpp
中)放入源字段之后,请使用以下构建命令(我将其与链接的注释一起复制到此处,以供参考) :# Here is a cool technique to use Coliru for small "Makefile projects":
# (No need to say "thanks" but if you feel inclined: coliru [at] tbfe.de)
pr -ti main.cpp|awk '/==> [^ ]+ <==/ {f=$2;next} {print>>f}' && make
此脚本的工作方式:
pr -ti
将8字符转换成制表符(Makefile
在语法上有效)awk ...
找到标题行,从中提取文件名,然后将所有内容写入,直到将下一个标题写入相应的文件中make
仅对结果文件集起作用。如何将项目转换为这种格式:
for file in *; do printf "==> $file <==\n" >> main.cpp; cat "$file" >> main.cpp; done
注意:确保您的项目没有名为main.cpp
的文件,否则您需要调整构建脚本(和生成器脚本)。
live example来自上面的同一链接。