Window编译文件
main.c代码如下:
#include "sub1.c"
#include "stdio.h"
int main()
{
int a=1, b=2;
printf("%.2f",x2x(a,b));
}
sub1.c代码如下:
float x2x(int a, int b)
{
float c;
c = b/a;
return c;
}
使用vscode编写程序并通过code running插件对文件进行编译,得到结果如下
Ubuntu使用gcc编译文件
main.c代码如下:
#include "sub1.c"
#include "stdio.h"
int main()
{
int a=1, b=2;
printf("%.2f",x2x(a,b));
}
sub1.c代码如下:
float x2x(int a, int b)
{
float c;
c = b/a;
return c;
}
编译命令及结果如下图:
Ubuntu使用makefile方式编译文件
mian文件有些许变化,代码如下:
#include "stdio.h"
int main()
{
int a=1, b=2;
float c = x2x(a,b);
printf("%.2f",c);
}
sub.c文件没有变化
makefile文件代码如下:
main2: sub1.o main2.c
gcc main2.c sub1.o -o main2
sub1.o: sub1.c
gcc -c sub1.c -o sub1.o
clean:
rm *.o
使用make命令实现编译及运行结果如下图:
总结
从本次实验中,我们可以看出Windows系统的Vscode具有简单易用的优势,使得编译过程更加便捷。而在Ubuntu系统中,虽然gcc和makefile的组合也能够完成编译任务,但相对于Windows系统来说,步骤更加繁琐。
在实际工作中,我们可以根据项目的需求来选择合适的编译环境。如果项目较小且需要快速上手,那么Windows系统下的Vscode可能是个不错的选择;如果项目较大且需要更多的自定义配置,那么Ubuntu系统下的gcc和makefile可能更加适合。