...
首页> 外文期刊>Communications of the Association for Information Systems >The Subtle and Counterintuitive Hazards of Non-Sequential Evaluation in Languages of the C Family
【24h】

The Subtle and Counterintuitive Hazards of Non-Sequential Evaluation in Languages of the C Family

机译:C族语言中非顺序评估的微妙和违反直觉的危害

获取原文
           

摘要

In the family of programming languages derived from the C programming language, the order of evaluation of expressions between sequence points is left undefined and may be counterintuitive. While most programmers assume that this lack of a defined order refers only to a lack of preference between left-to-right and right-to-left sequential evaluation, the standards actually permit, and language processors implement, a variety of non-sequential evaluation orders. In some cases, particularly those where expressions containing sequence points are combined without an intervening sequence point, computed results can be unanticipated, and can vary with different compilers for the same code. Yet these results fail to trigger any warning from compilers or syntax-checkers. Because languages of the C family dominate Information Systems curricula and new business application code, the risk that code in those languages may give incorrect results without any warning from automated tools presents significant hazards against the integrity of financial calculations. This article explains those hazards and outlines countermeasures.
机译:在从C编程语言派生的编程语言家族中,序列点之间的表达式的求值顺序不确定,并且可能违反直觉。尽管大多数程序员认为缺少定义的顺序仅是指从左到右和从右到左的顺序评估之间没有偏好,但是标准实际上允许并且语言处理器实现了各种非顺序评估订单。在某些情况下,尤其是那些包含序列点的表达式在没有中间序列点的情况下进行组合的情况下,计算结果可能无法预料,并且对于相同的代码,不同的编译器可能会有所不同。但是,这些结果无法触发来自编译器或语法检查器的任何警告。由于C族的语言在信息系统课程和新的业务应用程序代码中占主导地位,因此这些语言的代码可能会在没有来自自动化工具的任何警告的情况下给出错误结果的风险对财务计算的完整性造成了极大的危害。本文介绍了这些危害并概述了对策。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号