Ubuntu系统里使用gcc和Makefile编译c程序

本文介绍了如何在Ubuntu系统中使用gcc编译C程序,包括编写简单的hello world程序,以及如何编译包含多个源文件的程序。同时,通过一个实例展示了如何编写Makefile文件来自动化编译过程,比较了与Windows下编译工具的差异,加深了对C程序编译运行流程的理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、在Ubuntu系统下用C语言编写一个简单的输出 hello word 的程序,并编译有、运行之;

2、请编写一个主程序文件 main1.c 和一个子程序文件 sub1.c, 要求:子程序sub1.c 包含一个算术运算函数 float x2x(int a,int b),此函数功能为对两个输入整型参数做某个运算,将结果做浮点数返回;主程序main1.c,定义并赋值两整型变量,然后调用函数 x2x,将x2x的返回结果printf出来。

1) 请在ubuntu系统用gcc 命令行方式编译主程序main1.c 并运行; 

2) 请在windows系统下用你熟悉的编译工具编译主程序main1.c 并运行。

3、在任务4基础上,在ubuntu系统下用Makefile方式编程主程序。

一、gcc编译c程序。

1、以hello world为例子:

先使用ctrl+alt+t打开终端,输入vim hello.c创建一个c程序,回车进行编写,先输入i进入编写模式,然后编写好程序 按下esc,退出输入模式,在按住shift+:在输入wq,回车保存程序退出

#include<stdio.h>
int main()
{
        printf("hello world!!\n");
        return 0;
}
最后输入gcc hello.c -o hello回车在输入./hello即可

<think>好的,我现在要回答用户关于如何在Ubuntu上用GCC编译C程序并进行代码修改的问题。首先,我需要回忆一下相关的步骤用户提供的引用内容。 用户提到的引用[1]、[2]、[3]、[4]都涉及在Ubuntu使用GCCMakefile编译C程序。根据这些引用,我需要整理出基本的编译流程,然后重点说明如何在修改代码后重新编译。可能需要分步骤讲解,比如编辑代码、保存、重新编译、运行。同时,用户可能想知道如何高效地进行修改测试,特别是多次修改的情况,这时候Makefile可能会派上用场,因为引用[3]提到Makefile可以简化重复编译的步骤。 首先,我应该从安装GCC开始,确保用户已经安装了必要的工具。然后,用vim或nano编辑C文件,比如hello.c,保存后使用gcc命令编译。如果用户修改了代码,只需要再次运行gcc命令即可生成新的可执行文件。这可能需要提到每次修改后都需要重新编译,而使用Makefile可以自动化这个过程,尤其是在多文件项目中。 另外,引用[4]中的例子使用gcc hello.c -o hello,这个命令应该被包含在步骤中。同时,在修改代码时,用户可能需要使用文本编辑器,比如vim,如何保存退出也是需要说明的,比如在vim中输入:wq。 可能还需要提醒用户注意编译时的错误信息,如果修改后的代码有语法错误,GCC会报错,这时候需要根据错误信息调整代码。此外,Makefile使用可以进一步简化流程,用户只需要运行make命令即可自动编译,不需要每次都输入完整的gcc命令。 总结一下,步骤可能是: 1. 安装GCC 2. 编辑C文件(比如使用vim) 3. 保存修改 4. 重新编译 5. 运行测试 6. (可选)使用Makefile自动化编译 需要确保每个步骤都清晰,并引用相关的引用内容来支持说明。例如,引用[3]提到gcc分四个步骤处理,而Makefile可以简化多文件编译,所以当用户多次修改代码时,使用Makefile会更高效。 另外,用户的问题是如何在修改代码后进行编译,因此重点在于编辑重新编译的循环过程。可能需要强调修改后的保存操作,以及重新执行gcc命令的必要性。如果用户使用Makefile,可以创建一个Makefile文件,面写好编译指令,之后每次修改代码后只需运行make命令,这可以节省时间,特别是项目较大时。 最后,生成相关问题,比如如何调试、如何处理多个文件、如何优化编译过程等,这些都是用户可能感兴趣的后续问题。</think>在Ubuntu系统使用GCC编译C程序并修改代码的步骤如下: --- ### **1. 安装GCC编译器** 若未安装GCC,需先执行以下命令: ```bash sudo apt update sudo apt install gcc ``` 验证安装: ```bash gcc --version ``` --- ### **2. 编写/修改C程序** - **编辑代码**:使用文本编辑器(如`vim`或`nano`)修改代码文件。例如: ```bash vim hello.c ``` - **保存修改**:在`vim`中按`Esc`键进入命令模式,输入`:wq`保存并退出[^4]。 --- ### **3. 重新编译修改后的代码** 使用GCC重新编译修改后的文件: ```bash gcc hello.c -o hello ``` - `hello.c`为源文件,`-o hello`指定输出可执行文件名[^4]。 - 若代码有语法错误,GCC会输出错误信息,需根据提示修正代码后再次编译。 --- ### **4. 运行程序** 执行生成的可执行文件: ```bash ./hello ``` --- ### **5. 使用Makefile自动化编译(推荐)** 对于频繁修改的场景,可创建`Makefile`文件: ```makefile # Makefile示例 all: hello hello: hello.c gcc hello.c -o hello clean: rm -f hello ``` - **编译**:运行`make`命令自动编译修改后的文件[^3]。 - **清理**:运行`make clean`删除旧编译文件。 --- ### **关键点** 1. **修改后必须重新编译**,否则运行的是旧版本程序。 2. **错误排查**:若编译失败,需根据GCC报错信息定位代码问题。 3. **自动化工具**:使用`Makefile`可避免重复输入编译命令,提升效率[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值