linux c 多文件编译,Linuxc - 多c文件程序编译执行

多文件使用,一起编译

定义max.h

int max(int a,int b);

定义max.c

#include "max.h"

int max(int a,int b)

{

if (a > b) {

return a;

} else {

return b;

}

}

定义主c文件

#include

#include "max.h"

int main()

{

int a1 = 22;

int a2 = 33;

int maxNum = max(a1,a2);

printf("the max value is %d\n",maxNum);

return 0;

}

编译执行!

root@jiqing-virtual-machine:~/cspace/les2# gcc max.c main.c -o main.out

查看

root@jiqing-virtual-machine:~/cspace/les2# ./main.out

the max value is 33

分别编译

头文件的好处,一次编译,多次使用。 只需要引入声明就可以了。

root@jiqing-virtual-machine:~/cspace/les2# gcc max.o min.o main.c

main.c: In function ‘main’:

main.c:8:18: warning: implicit declaration of function ‘max’ [-Wimplicit-function-declaration]

int maxNum = max(a1,a2);

^

main.c:9:18: warning: implicit declaration of function ‘min’ [-Wimplicit-function-declaration]

int minNum = min(a1,a2);

^

没有声明,会报错。

#include

//#include "max.h"

//#include "min.h"

int main()

{

int a1 = 22;

int a2 = 33;

int maxNum = max(a1,a2);

int minNum = min(a1,a2);

printf("the max value is %d\n",maxNum);

printf("the min value is %d\n",minNum);

return 0;

}

将注释的去掉就可以了。

单个编译max.c,min.c

root@jiqing-virtual-machine:~/cspace/les2# gcc -c max.c -o max.o

root@jiqing-virtual-machine:~/cspace/les2# gcc -c min.c -o min.o

编译成max.o和min.o之后,计算机就能够识别了。

以后可以在多个c文件中使用。只需要引入头文件h就可以了。

root@jiqing-virtual-machine:~/cspace/les2# gcc max.o min.o main.c -o main.out

root@jiqing-virtual-machine:~/cspace/les2# ./main.out

the max value is 33

the min value is 22

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/344983.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot微服务,Docker和Kubernetes研讨会–第一部分

在本系列研讨会中,我们将使用spring boot,docker构建一些微服务,然后将它们部署到kubernetes中。 因此,让我们开始吧。 首先,我们需要定义一个问题陈述。 可以说我们要建立一个订单管理系统。 识别域 第一步将是了解…

【渝粤题库】广东开放大学 建筑设备 形成性考核

选择题 题目:对于以防止触电为目的的漏电保护器宜选用( )。(难度系数:易) 答案: A、动作时间0.1秒,动作电流15毫安 B、动作时间0.5.秒,动作电流30毫安 C、动作时间0.1秒&…

linux 信号量锁 内核,Linux内核信号量互斥锁应用

主要介绍了Linux 内核关于信号量,互斥锁等的应用内核同步机制-信号量/互斥锁/读-写信号量 sema ,mutex ,rwsem信号量通用信号量用户类进程之间使用信号量(semaphore)进行同步,内核线程之间也使用了信号量,一个线程完成了某一个动作就通过信号量告诉别的线程&#xf…

【渝粤题库】广东开放大学 标准化法律法规 形成性考核

​选择题 题目:WTO/TBT协议即《技术性贸易壁垒协议》是WTO对缔约国标准化工作的规定,因次也称为( )。 题目:对于违法犯罪行为的制裁和惩罚,体现了法律的( ) 题目:《上海市标准化条例》、《广东省产品质量监督条例》都属…

【渝粤题库】广东开放大学 电算化会计 形成性考核

选择题 题目: 会计作为一个提供( )为主的信息系统,长期以来在企业的经营管理中起着非常重要的作用 题目: 会计作为一个提供( )为主的信息系统,长期以来在企业的经营管理中起着…

stacktraces_Stacktraces告诉了事实。 但事实并非如此。

stacktraces我们公司致力于使软件错误的原因对开发人员和运营透明。 与替代解决方案相反, 我们在您发现源代码中恶意代码的地方指出了问题的所在 。 即使目前我们以检测内存泄漏的能力而闻名,但我们也正在扩展到其他领域。 为了给您一些有关我们研究方向…

【渝粤题库】广东开放大学 营销策划 形成性考核

选择题 题目:宝洁公司旗下的洗发水品牌有飘柔、潘婷、海飞丝等不同的子品牌,这些品牌分别面对不同的细分市场,宝洁公司的细分依据是( )。 题目:在春节、中秋节、情人节等节日即将来临的时候,许多…

Linux搜索无线网络命令,Linux操作系统的无线网络命令

rts:指定RTS/CTS握手方式,使用RTS/CTS握手会增加额外开销,但如果无线网络中有隐藏无线节点或者有很多无线节点时可以提高性能。后面的参数指定一个使用该机制的最小包的大小,如果该值等于最大包大小,则相当于禁止使用该…

【渝粤题库】广东开放大学企业标准化 形成性考核

​👉关注我,看答案👈 选择题 题目:企业标准应当报当地标准化行政主管部门审查。 题目:决策论、规划论、库存论,都是企业质量管理中可以借鉴使用的管理办法。 题目:6σ工程包括6σ改进和6σ策划两种类型。 题…

在JDK 12精简数字格式中使用最小分数数字

帖子“ 紧凑数字格式出现在JDK 12中 ”演示了对JDK 12中 NumberFormat的支持,以支持紧凑数字格式 。 该帖子中显示的示例仅使用NumberFormat的调用重载了NumberFormat的新重载getCompactNumberInstance(-)方法返回的NumberFormat实例,因此没有指定诸如最…

linux做定时数据库备份,Linux实现定时备份数据库

1.创建开启定时任务1.1crontab -e 打开定时任务编辑器1.2 0 1 * * * /备份脚本存放路径-用crontab -e 编辑器打开存放好1.3 crontab -l 查看定时任务1.4 service crond start 启动定时任务1.5 service crond status查看定时任务状态2.创建定时备份脚本touch test.sh 创建脚本&…

【渝粤题库】陕西师范大学151112 审计学作业(高起专)

《审计学》作业 一、单选题 1.注册会计师评估的重大错报风险与所需审计证据的数量呈( )变动关系。 2.注册会计师在检查登记入账的销货业务的真实性时,有效的做法是( )。 A.从主营业务收入明细账追查至发运凭证 B.从发…

【渝粤题库】陕西师范大学163210 旅行社经营与管理

单选题 中国国际旅行社成立于( )年。 A.1949 B.1954 C.1980 D.1923 新中国成立后,我国第一家旅行社是1949年成立的( )。 A.厦门华侨服务社 B.中国青年旅行社 C.中国旅行社 D.中国国际旅行社 ( )…

linux sftp自动输入密码,linux下实现sftp自动登录。

今天帮之前同事写一个sftp自动上传的脚本,因为sftp无法匿名登录,因此使用sftp时,每次都需要输入服务器密码,无法进行自动上传和下载文件,其中一种方法可以使用lftp这个就不在详细介绍了,现在介绍另外一种方…

【渝粤题库】陕西师范大学165107工作分析与设计作业(高起专)

《工作分析与设计》作业 单选题 1、工作分析最初产生于( )的工业企业中。 A.英国 B.德国 C.美国 D.日本 2、( )是组织中最基本的活动单元。 A.任务 B. 部门 C.工作 D.岗位 3、同一职系中职责繁简、难易、轻重及任职条件充分相似的…

【渝粤题库】陕西师范大学180210 国际市场营销学 作业

一、单选题 日本市场具有( )特点 A. 经营国际化 B. 市场渠道畅通 C. 销售季节性强 D. 垄断控制型市场国际工业品市场细分不可以依据( ) A. 用户规模 B. 用户购买力大小 C. 消费者年龄 D. 购买决策产生的过程文化环境是( ) A.静止的 B. 不会影响商业习俗的 C. 对任何…

使用ClickHouse UDF与OpenAI模型集成

本文字数:14683;估计阅读时间:37 分钟 作者:Dale McDiarmid 审校:庄晓东(魏庄) 本文在公众号【ClickHouseInc】首发 Meetup活动 ClickHouse Shenzhen User Group第1届 Meetup 火热报名中&#x…

guava的正确引入方式_使用Guava的AbstractInvocationHandler正确完成代理

guava的正确引入方式不太经常,但有时我们被迫使用java.lang.reflect.Proxy编写自定义动态代理类 。 这种机制实际上没有任何魔术,即使您永远不会真正使用它,也值得知道–因为Java代理在各种框架和库中无处不在。 这个想法很简单:…

vba执行linux命令,如何使用vba的shell()运行参数的.exe?

我有一个目标文件路径的结构如下例所示。C:\Program Files\Test\foobar.exe /G我需要做的就是使用vba的shell()命令来执行这个文件。如何格式化文件路径以告诉Shell()有一个参数,它需要调用与运行.exe我已经阅读/尝试(无效)在下面的结果在右边。file ""&…

【渝粤题库】陕西师范大学200271 微分几何 作业(专升本)

《微分几何》作业 一. 填空题 曲面的第一基本形式为( )。空间曲线的基本公式是( )。曲面在任一点(u,v)的单位法向量公式为( )空间曲线的切向量为( &#xff…