一个C文件在linux中调用并运行另一个c文件

gut 发布于 6 天前 c 最后更新 6 天前 10 浏览

我在同一个文件夹的Linux上有三个c文件one.c,two.c和three.c 我需要先运行one.c文件,然后一旦它完成运行,它应该会自动运行two.c文件。 在two.c文件完成运行后,它应该会自动运行three.c,等等...... 所有的文件将被编译。 提前致谢 !!! ! !

已邀请:

tiste

赞同来自:

看起来你可以使用初学者的参考,例如this oneThis book也没有伤害。 它们都是小书,但最好在开始时去源。 祝你好运!

gautem

赞同来自:

你可以单独编译和运行它们,比如评论中的jightuse和mbratch建议。 另一种“运行”每种方法的方法是将它们链接在一起并从每个方法运行一个函数。在这里,我将main()更改为main1(),main2()和main3(),但是在单独的文件中。

poly@blue-starling ~/junk/2013.11: cat one.c
#include <stdio.h>
void main1(void)
{
  printf("one here!\n");
}
poly@blue-starling ~/junk/2013.11: cat two.c
#include <stdio.h>
void main2(void)
{
  printf("two here!\n");
}
poly@blue-starling ~/junk/2013.11: cat three.c
#include <stdio.h>
void main3(void)
{
  printf("three here!\n");
}
poly@blue-starling ~/junk/2013.11: cat main.c
void main(void)
{
    main1();
    main2();
    main3();
}
poly@blue-starling ~/junk/2013.11: gcc *.c
main.c: In function ‘main’:
main.c:2: warning: return type of ‘main’ is not ‘int’
poly@blue-starling ~/junk/2013.11: a.out
one here!
two here!
three here!
poly@blue-starling ~/junk/2013.11: 
(它破坏了一些规则并得到了警告,因为main()并不是严格意义上的主要内容,但希望能够表明这个想法。) 无论如何,这是一种方式。