本文旨在通过在Ubuntu系统下对简单c语言程序的编写及运行,熟练gcc和makefile的使用
文章目录
- 1. c语言环境的安装
- 2. Ubuntu系统下编写 hello word 程序
- 3. Ubuntu下C语言的应用
- 3.1 Ubuntu下编译主程序main1.c和子程序sub1.c
- 3.2 Windows系统下使用Dev-c++编译主程序
- 4. 在Ubuntu系统下Makefile编程主程序
- 5. 总结
1. c语言环境的安装
首先配置C语言环境,输入以下指令安装gcc。
sudo apt install gcc
然后输入以下语句检查gcc版本
gcc --version
2. Ubuntu系统下编写 hello word 程序
Ubuntu上常用的文本编辑器有vi\vim、gedit、nano,我采用nano来编写该程序,在终端输入以下语句后,会进入文本编辑模式,然后编写程序即可。
nano HelloWorld.c
编写以下程序
#include<stdio.h>
int main()
{
printf("Hello World");
}
编写程序后,ctrl+o保存文件,会出现以下界面,若不需要更改文件名,回车即可,然后ctrl+x退出到终端。
输入以下语句编译HelloWorld.c
gcc HelloWorld.c
编译后输入./a.out 运行程序,a.out是编译后默认的可执行文件名,也可通过以下语句修改文件名
gcc HelloWorld.c -o [文件名]
下面是我运行程序后的截图
3. Ubuntu下C语言的应用
3.1 Ubuntu下编译主程序main1.c和子程序sub1.c
编写一个主程序文件 main1.c 和一个子程序文件 sub1.c, 要求:子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来。
sub1.c代码如下:
float x2x(int a,int b)
{
return (float)(a*b);
}
main1.c代码如下:
#include<stdio.h>
#include"sub1.c"
void main()
{
int x=5,y=4;
float s;
s=x2x(x,y);
printf("%f\n",s);
}
如上文所说,sub1.c及main1.c写好后,将main1.c生成可执行文件名,可得到如下图所示结果
3.2 Windows系统下使用Dev-c++编译主程序
使用Dev-c++编写的代码如下
#include<stdio.h>
float x2x(int x,int y)
{
return (float)(x*y);
}
int main()
{
int x=5,y=4;
float s;
s=x2x(x,y);
printf("%f\n",s);
}
编译并运行后结果如下:
通过比较,可以发现Ubuntu系统下使用gcc和Windows系统下使用Dev-c++的运行结果是一样的,因为Dev-c++在后台调用的也是gcc。
4. 在Ubuntu系统下Makefile编程主程序
在命令行中输入touch makefile创建makefile文件,然后使用nano、vi等文本编辑器打开makefile文件编写程序。
touch makefile
nano makefile
编写代码如下:
s3:main1.o sub1.o
gcc -o s3 main1.o sub1.o
main1.o:main1.c
gcc -c main1.c
sub1.o:sub1.c
gcc -c sub1.c
clean:
rm *.o
需要注意的是gcc前一定要使用tab,而不能用空格。
编写文件并保存后,在终端输入make,系统会生成可执行文件s3。
使用./运行之
5. 总结
通过在Ubuntu环境下对简单c语言程序的编译及运行,可熟悉Ubuntu系统下gcc和makefile的基本使用,为以后的深入学习打下基础。