1、bug出现描述:在编程时碰到一个for循环的Bug,因为Bug的隐蔽性,我花了我很长时间才排查出来。
2、bug具体描述如下:如果一个数据通过for循环,for循环序号数为零或者是通过索引数组为空数组,那个通过的这个数据将被初始化为默认值,如果在Actor Framework中还会造成软件闪退,定位错误为元素同址访问错误。
3、bug复现:
我们分别创建数值,数组,和类分别通过一个空数组索引的循环看看结果。
下边是循环数为1时的结果(正常情况):
循环数为0(第一种bug情况):
使用空数组索引(第二种bug情况):
这种情况更加隐蔽,我碰到的是这一个,上面一个是我思考可能出现的原因。
解决方案:
将数值输入输出改为移位寄存器:
审核编辑:郭婷
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
LabVIEW
+关注
关注
1920文章
3619浏览量
317414 -
编程
+关注
关注
88文章
3441浏览量
92470
原文标题:LabVIEW的编程之道—for循环的一个Bug
文章出处:【微信号:LabVIEW的编程之道,微信公众号:LabVIEW的编程之道】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
labview精确控制循环时间
LabVIEW是一款图形化编程语言,广泛应用于实验室和工业控制领域。正因为其图形化的特点,使得其在控制循环时间上具有一定的挑战性。本文将详细介绍LabVIEW中如何精确控制
暂停Debian的升级:内核 6.1.64 ext4 Bug警报
Debian 开发人员正在积极寻找解决方案,并会在其可用时提供更新。与此同时,用户可以通过访问此处的 Debian bug 追踪页面了解该 bug 的进展情况并获取更多信息。
PLC编程循环语法使用方法
不管什么CPU,什么编程语言,都有循环语法,可以用于实现循环。当然,很多时候,语言对循环支持的并不够理想。通常还要有指针,间接寻址等配合。所以在PLC
发表于 11-13 15:30
•603次阅读
浅谈LabVIEW的线程编程的相关知识
在LabVIEW中只要程序框图中的代码可以并行运行(功能模块之间没有连线关系,比如两个独立的While循环),那么LabIVEW在运行这段代码时就会自动将它们分配在多个线程内同时运行。
发表于 11-10 10:21
•475次阅读
如何使用AT32F437以太网通信接口实现在应用中编程(IAP)的解决方案
本应用笔记专为使用AT32F437微控制器的开发人员编写。它提供了如何使用AT32F437以太网通信接口实现在应用中编程(IAP)的解决方案。有两种基于LwIP TCP/IP协议栈的解决方案
发表于 10-25 07:41
如何使用AT32F407以太网通信接口实现在应用中编程(IAP)的解决方案
AT32F407 IAP using the EMAC提供了如何使用AT32F407以太网通信接口实现在应用中编程(IAP)的解决方案。
发表于 10-24 07:35
中微CMS32M55xx循环扇方案说明
循环扇让风沿着一定的方向呈螺旋形吹出,随着扇叶搅动,形成螺旋形的柱状风,同时使吹出来的风距离较远和具有较好的定向性。中微半导体循环扇解决方案主要基于中微高性能入门级电机驱动芯片CMS32M55xx进行开发,该
功率器件在工业应用中的解决方案
功率器件在工业应用中的解决方案,议程分为:功率分立器件概览 、 IGBT产品3、高压MOSFET 、 碳化硅Mosfet、碳化硅二极管和整流器、氮化镓PowerGaN、工业电源中的应用和总结八个部分。
发表于 09-05 06:13
labview是什么软件?labview是什么语言?labview能实现什么功能?
labview是什么软件?labview是什么语言?labview能实现什么功能? LabVIEW是一种图形化的编程语言,通常被用于数据采集
labview是用来干嘛的 labview内存已满怎么解决
LabVIEW以图形化的方式进行编程,用户可以通过拖拽和连接不同的图标,构建程序的运行流程。这种图形化编程的特点使得LabVIEW非常适合于快速开发和原型验证,尤其在实验室和测试环境中
评论