Attribute estimated-stack-usage

概述

pragma {attribute 'estimated-stack-usage' := '<estimated stack size in bytes>'} 有助于防止拥有活动栈检查功能的运行时系统下发指示堆栈中空间不足的消息 (C0298: Calculation of stack usage incomplete because of recursive calls)。此检查在代码生成期间执行。对于递归方法,您可能希望减少消息数。

语法

{attribute 'estimated-stack-usage' := '<estimated stack size in bytes>'}

插入位置

将该 pragma 插入在相关方法声明部分中 METHOD 声明上方的行中。

示例

{attribute 'estimated-stack-usage' := '99'}
METHOD PUBLIC m_Temp : UDINT
VAR_INPUT
    uiN : UINT;
END_VAR

m_Temp := 1;
IF uiN > 1 THEN
    m_Temp := uiN * THIS^.m_Temp(uiN := (uiN- 1));
    RETURN;
ELSE
    RETURN;
END_IF