c语言 两个程序如何连接

作者&投稿:宗晴 (若有异议请与网页底部的电邮联系)
在c语言中,把两个函数放在两个程序文件中,怎样作为两个文件进行编译,连接和运行~

不知道你用的是什么编译器,如果用的是VC的话,可以尝试下我的做法:
创建两个源代码文件:1.cpp和2.cpp
1.cpp中内容:
#include
#include"2.cpp"/*采用包含命令调用2.cpp中的函数*/
int max(int x,int y)
{
return x>y?x:y;
}
int main()
{
int a,b,m,n;
a=10;
b=30;
m=max(a,b);
n=min(a,b);
printf("%3d%3d
",m,n);
return 0;
}
2.cpp中内容:
int min(int x,int y)
{
return x<y?x:y;
}
把这两个源代码放到一个文件夹下,编译并运行1.cpp即可。注意,2.cpp中没有main函数,所以不能直接编译2.cpp。其实由于最终1.cpp和2.cpp要连接到一起形成一个可执行文件1.exe,所以2.cpp中也不能有main函数。

请使用预编译指令 #include。
#include放在代码文件头,用于告诉编译器,文件中包含的头文件,属于预处理文件的一部分 。语法为: #include (这句是程序编译时搜索系统目录文件) #include “HName.h" (这句是程序编译时搜索当前项目的文件)

默认路径是源文件的路径。
如果指定别的路径,两种方法:
一是相对当前默认路径指定路径。
二是指定绝对路径。

譬如:
E:\C\c.c 这是源文件
E:\C\abc.exe
E:\D\abcd.exe
C:\A\aaa.exe

如果想执行abc.exe,那么可以不指定路径:
#include <stdlib.h>
int main()
{
char *cmd="abc.exe";
system(cmd);
return 0;
}

如果想执行abcd.exe,那么可如下指定路径:
include <stdlib.h>
int main()
{
char *cmd="..\\D\\abcd.exe";
//指定相对路径
//char *cmd="E:\\D\\abcd.exe";
//指定绝对路径
system(cmd);
return 0;
}

如果想执行aaa.exe,则必须指定绝对路径:
#include <stdlib.h>
int main()
{
char *cmd="C:\\A\\aaa.exe";
system(cmd);
return 0;
}

对于空格问题,可按如下方法解决
#include <stdlib.h>
int main()
{
char *cmd="E:\\AB\" \"CD\\xyz.exe";
//即执行E:\AB CD\xyz.exe
system(cmd);
return 0;
}

那就互相调用

注册程序启动管理系统不就好了,启动时候将需要的数据传参过去

我只知道在linux下可以使用makefile的方式连接