__weak是 ARMCC/Keil 编译器提供的扩展关键字,专门用于定义弱符号(Weak Symbol),核心作用是让链接器在遇到多个同名符号时,优先选择非弱符号(强符号)。
通过Keil uVision的帮助文档,可以查询到__weak的用法:
例如,在一个文件中定义了弱函数__weak void Task1_Deal(void),是空的:
在另外一个文件中定义了强函数void Task1_Deal(void),提供了实现,在调用的时候,会调用这个强函数:
张小明
前端开发工程师
__weak是 ARMCC/Keil 编译器提供的扩展关键字,专门用于定义弱符号(Weak Symbol),核心作用是让链接器在遇到多个同名符号时,优先选择非弱符号(强符号)。
通过Keil uVision的帮助文档,可以查询到__weak的用法:
例如,在一个文件中定义了弱函数__weak void Task1_Deal(void),是空的:
在另外一个文件中定义了强函数void Task1_Deal(void),提供了实现,在调用的时候,会调用这个强函数:
1. XGBoost决策树调参的核心价值在机器学习实战中,XGBoost因其出色的表现成为结构化数据建模的首选工具。但很多使用者常陷入一个误区——直接套用默认参数或盲目网格搜索。实际上,理解树结构的调参逻辑比机械调参更重要。本文将聚焦两个最关键的树结构参…
在BACnet协议的暖通空调控制场景中,有一个容易被混淆、却至关重要的对象——Loop(回路)。很多做空调控制开发的朋友,初次接触时总会把它和空调遥控器、普通设定值对象搞混,甚至误以为它是某个硬件部件。今天就用最通俗…
CTF新手入门:用CTFcrackTools和CyberChef破解密码题的实战指南 第一次接触CTF比赛时,看到那些复杂的密码题总让人望而生畏。作为过来人,我完全理解这种感受——面对一串毫无规律的数字或字母,大脑一片空白,完全不知道…
在当下城市住房中,小户型客厅成为常见选择,但空间狭小易显拥挤。选择合适的窗帘能有效拓展视觉空间,让客厅更显宽敞。槿木软装将为您详细解析小户型客厅窗帘的选择方法。产品核心定位在窗帘窗饰行业,产品正从“单一功能产品”向 “…
运维基础概念运维(Operations)的核心目标是保障系统稳定、高效运行,涵盖服务器管理、网络监控、故障排查等。常见运维方向包括:系统运维:Linux/Windows服务器维护、用户权限管理。网络运维:路由器、交换机配…
STM32CubeIDE实战:打造工业级ADC采集系统的7个关键策略 当你在凌晨三点盯着示波器上跳动的ADC波形时,是否想过——为什么同样的电路设计,别人的数据曲线像丝绸般顺滑,而你的却像心电图般狂躁?这个问题困扰着80%的嵌入式…