ubuntu的部分功能运用
问题描述
编写一个主程序文件main1.c和一个子程序文件sub1.c,要求:子程序sub1.c包含一个算术运算函数float x2x(int a,int b),此函数功能为对两个输入整形参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整形变量,然后调用函数x2x,将x2x的返回结果printf出来。
1)请在ubuntu系统用gcc命令行方式编译主程序main1.c并运行;
2)请在windous系统下用你熟悉的编译工具编译主程序main1.c并运行。
3)在此基础上,在ubuntu系统下用makefile方式编译主程序
使用ubuntu系统解决该问题的先决条件
在终端输入sudo apt-get install vim下载vim
在终端输入sudo apt-get install g++下载gcc
在终端输入sudo apt-get install makefile下载makefile
解题过程
1.在终端创建一个主程序main1.c文件和一个子程序sub1.c文件
(1)在终端输入vim main1.c创建主程序main1.c文件,再按下i进入编辑,
输入主程序main1.c的代码。
#include<stdio.h>
#include"sub1.c"
void main()
{
int a,b;//定义变量
float y;
a=5;
b=3;
y=x2x(a,b);//调用函数x2x
printf(“%f”,y);
}
按下esc键,再输入:wq保存代码。
(2)在终端输出vim sub1.c创建子程序sub1.c文件,并按下i进入编辑
输入子程序sub1.c的代码
#include<stdio.h>
float x2x(int a,int b)
{
float x;//定义一个新的变量
x=a*b;//将值进行运算
return x;//返回结果
}
按下esc键,再输入:wq保存代码
2.在ubuntu系统用gcc 命令行方式编译主程序main1.c并运行
3.windows系统下用vc6.0编译主程序main1.c
编译sub1.c子函数
编译运行主程序main1.c,结果如下图
4.在ubuntu系统下用Makefile方式编程主程序。
(1)在终端输入gedit makefile创建makefile文件。
(2)在文件里编译
(2)输入make指令。
(3)编译主程序main1.c并运行。
关于makefile的tips
1.main:后面接.o标识,如果文件中没有所需的依赖.o文件,则先重新编译生成没有编译的那个文件。
make在当前目录下寻找“Makefile”或“makefile”文件
若找到,查找文件中的第一个目标文件.o
若目标文件不存在,根据依赖关系查找.s文件
若.s文件不存在,根据依赖关系查找.i文件
若.i文件不存在,根据依赖关系查找.c文件,此时.c文件一定存在,于是生成一个.o文件,再去执行
2.当开始找第一个目标时,要使用Tab键,否则将会提醒无间隔,然后停止。