1、bug出現描述:在編程時碰到一個for循環的Bug,因為Bug的隱蔽性,我花了我很長時間才排查出來。
2、bug具體描述如下:如果一個數據通過for循環,for循環序號數為零或者是通過索引數組為空數組,那個通過的這個數據將被初始化為默認值,如果在Actor Framework中還會造成軟件閃退,定位錯誤為元素同址訪問錯誤。
3、bug復現:
我們分別創建數值,數組,和類分別通過一個空數組索引的循環看看結果。
下邊是循環數為1時的結果(正常情況):
循環數為0(第一種bug情況):
使用空數組索引(第二種bug情況):
這種情況更加隱蔽,我碰到的是這一個,上面一個是我思考可能出現的原因。
解決方案:
將數值輸入輸出改為移位寄存器:
審核編輯:郭婷
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
LabVIEW
+關注
關注
1970文章
3654瀏覽量
323425 -
編程
+關注
關注
88文章
3614瀏覽量
93709
原文標題:LabVIEW的編程之道—for循環的一個Bug
文章出處:【微信號:LabVIEW的編程之道,微信公眾號:LabVIEW的編程之道】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
EEPROM編程常見錯誤及解決方案
EEPROM(電可擦可編程只讀存儲器)在編程過程中可能會遇到多種錯誤。以下是一些常見的EEPROM編程錯誤及其解決方案: 常見錯誤 數據寫入
中微愛芯循環風扇整體解決方案
換氣的場合,循環風扇不僅能夠提供舒適的空氣流動,還能輔助空調系統,提高制冷效率,減少能源消耗。在家電行業中,循環風扇以其節能、高效、智能等特點,成為現代家居生活的重要組成部分。
BCM中的開關檢測:集成MSDI解決方案與半分立解決方案
電子發燒友網站提供《BCM中的開關檢測:集成MSDI解決方案與半分立解決方案.pdf》資料免費下載
發表于 09-20 09:08
?0次下載
labview是什么編程語言寫的
的一種圖形化編程語言。它并不是用傳統的文本編程語言(如C++、Python等)編寫的,而是采用了一種獨特的圖形化編程語言,通常被稱為G語言(Graphics Language)。 1. Lab
labview中如何實現字符串選擇輸出
在LabVIEW中實現字符串選擇輸出是一項常見的任務,它涉及到字符串處理、條件判斷和用戶界面設計等多個方面。由于LabVIEW是一種圖形化編程語言,其
多晶硅生產冷卻循環水系統數據采集解決方案
和水質的場合。 無論哪種系統,都需要對冷卻水的溫度、流量、pH值、濁度等關鍵參數進行實時監測和數據采集,以便于及時反饋異常,從而得到及時可靠的管理控制。對此,數之能提供冷卻循環水系統數據采集解決方案,實現對循環水
cnc怎么編程m99循環次數
編程通常使用G代碼(一種數控編程語言)來編寫。M99指令是G代碼中的一個重要指令,用于結束循環。 CNC編程基礎 在深入了解M99指令之前,
arduino中while循環怎么跳出
執行某段代碼的情況。然而,如何在合適的時機跳出 while 循環是一個需要注意的問題。本文將詳細介紹 Arduino 中 while 循環的基本概念,以及如何使用不同的技巧跳出該循環來
循環指令loop規定循環次數
循環指令是計算機編程中非常重要的概念,它允許程序重復執行一段代碼塊,使得程序可以更有效地處理大量數據和重復性任務。在本文中,我們將詳盡、詳實、細致地介紹循環指令的相關概念、語法和應用場
labview精確控制循環時間
LabVIEW是一款圖形化編程語言,廣泛應用于實驗室和工業控制領域。正因為其圖形化的特點,使得其在控制循環時間上具有一定的挑戰性。本文將詳細介紹LabVIEW
labview怎么查數組中相同元素的個數
要查找LabVIEW中數組中相同元素的個數,可以使用以下步驟: 創建一個包含要查找的數值的數組。這可以通過手動輸入數組元素或從文件/其他數據源導入數組實現。 使用“For Loop”結構來遍歷數組
LabVIEW SMO 的原理、用法和實際應用
LabVIEW SMO (Shared Memory Option) 是一種在 LabVIEW 中用于多線程編程和數據共享的選項。它允許多個并發的 VI (Virtual Instrument
labview讀取excel數據中的每個數據
LabVIEW 是一種基于圖形化編程的開發環境,主要用于測量、控制和監視各種類型的設備和系統。它強大的圖形編程功能使得數據處理和分析變得更加簡單和高效。在本文中,我們將詳細介紹
評論