两个.c文件访问同一个全局变量的用法

本文介绍了在C语言中如何让不同源文件间共享全局变量的方法。一种方式是在一个源文件中定义全局变量,在另一个源文件中使用extern声明。另一种方式是通过头文件进行extern声明,但需注意不要在定义全局变量的源文件中包含该头文件。

上周编程的时候犯了一个错误,以为在一个头文件里面定义一个全局变量,然后两个.c文件包含这个头文件,这两个.c文件就可以同时访问。结果编译报错,理由是重复定义。下面就介绍两种方法,同一个全局变量被两个.c文件访问。

(1)不用头文件

在file_a.c中定义一个全局变量:int flag ;
在file_b.c中:extern int flag;即可。

(2)利用头文件

在file_a.c中定义一个全局变量:int flag;
在common.h中定义:extern int flag;
然后在file_b.c中包含common.h文件即可。
注:file_a.c中不可包含头文件common.h。

2017.07.29
22:54

内容概要:本文介绍了《AI原生应用架构白皮书》的核心内容,系统阐述了AI原生应用的11大关键要素,涵盖模型发展、Agent驱动、以数据为中心、工具链整合等架构理念。白皮书结合40多位一线工程师的实践经验,深入探讨AI Agent的技术成熟度与发展趋势,提出从单任务到多Agent协同的演进路径,并剖析了当前AI原生应用在开发效率、效果优化、系统可观测性、安全性等方面的挑战。文中重点介绍AI网关作为关键基础设施的作用,支持MCP/A2A协议、工具动态组装、智能路由与流量治理,同时强调通过高代码框架(如AgentScope)在模型自主性与业务可控性之间取得平衡,推动AI原生应用向高效、安全、可维护的方向发展。; 适合人群:具备一定AI或软件开发经验的技术人员、架构师、AI产品经理及企业技术决策者,尤其适合关注AI Agent落地与系统化建设的从业者; 使用场景及目标:①理解AI原生应用的整体架构设计与技术选型逻辑;②掌握AI网关、Agent框架、工具调用、可观测性等关键技术的实践方案;③指导企业在智能客服、代码辅助、供应链优化等场景构建生产级AI系统; 阅读建议:建议结合白皮书中的架构图与实际案例进行系统学习,重点关注AI与云原生融合的设计思路,并在实践中配合AI平台工具进行调试与验证,以深入掌握AI原生应用的开发与运维全流程。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值