• OPNET中FIN,FOUT以及FRET的作用 分类: opnet 2014-05-12 16:07 144人阅读 评论(0) 收藏


    为了使一个用户定义的函数被执行,该函数必须与一个特殊的堆栈跟踪代码相连。堆栈跟踪技术靠在函数的入口点和出口点插入预处理器宏指令完成(一个函数只有一个入口点,但可以有多个出口点(由C语言的return声明决定)),这些宏指令为:FIN、FOUT和FRET。

    FIN被插入到的入口点;FOUT被插入到函数的出口点,但却不返回任何值;FRET被插入到函数的出口点,返回一个值。

    注意这些宏指令不需要以分号结束(它们自我包含),但OPNET提供的例程中均以分号结束。FIN的参数中也不需要双引号。OPNET提供的所有的示例模型都包含了这些宏指令,并且建议用户定义的函数也包含这些宏指令。如果FIN、FOUT、和FRET被正确插入了用户代码中,我们就可以使用op_vuerr来找出程序错误的位置,哪怕是在一个嵌套的模型函数调用中。

    因此Function Block函数块格式如下:

    1
    2
    3
    FIN(send_pkt())
    your code
    FOUT

    如果上述格式的代码中只有FIN而没有FOUT,那么OPNET会有如下的出错信息:

    1
    2
    <<< Program Abort >>>
    Standard function stack imbalance

  • 相关阅读:
    【MySQL】(三)文件
    【MySQL】(二)InnoDB存储引擎
    Linux Shell脚本编程-信号捕获
    Linux Shell脚本编程-数组和字符串处理
    Linux Shell脚本编程-函数
    Linux Shell脚本编程-语句控制
    Linux Shell脚本编程-基础2
    Linux Shell脚本编程-基础1
    Awk
    Sed
  • 原文地址:https://www.cnblogs.com/galway/p/4643688.html
Copyright © 2020-2023  润新知