久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3318|回復: 5
打印 上一主題 下一主題
收起左側

想請問一下C語言循環累加超過變量限制后,系統會出錯嗎?

[復制鏈接]
跳轉到指定樓層
樓主
ID:349690 發表于 2020-9-2 17:48 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我在一個STC15W系列的單片機程序開發里面,不小心出了個錯誤。
unsigned int n;
while(1) { n++;…… }
大概就是以上邏輯。
n在實際運行中,很快就超過了65535的限制。我想問這個情況下,繼續累加下去,n的值是一直保持65535呢?還是從0開始自動循環呢?系統會不會崩潰?
根據實際情況,系統確實沒有崩潰,我也是在后期檢查時候才發現這個問題的,因為是分支程序,而且有中斷跳出,目前各種測試這個bug并沒有出現致命問題。但是可怕的是,1K的固件已經燒進去了,心中忐忑。所以想問問大師們,這樣的超限錯誤,芯片內變量的實際情況是怎樣的呢?我需不需要解決bug重新燒錄,還是這批就這樣放過呢?
先謝謝各位啦
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:471066 發表于 2020-9-2 18:52 | 只看該作者
為什么是65535,而不是65536,你也知道到655336就表示為0了,很簡單的例子是鐘表,到23點59分再走1分鐘就是24(0)點,這就叫溢出,他不會理會你到8點要上班,到12點要下班!
回復

使用道具 舉報

板凳
ID:378182 發表于 2020-9-2 20:00 | 只看該作者
這個變量 n 在程序其他語句中是否有引用?如果有引用并參與運算,則會引起不可預見的錯誤。
如無引用,由其在0-65535間循環,不必理會。
回復

使用道具 舉報

地板
ID:816373 發表于 2020-9-2 23:04 | 只看該作者
會從0開始繼續循環,具體會不會崩潰要看你是用來干什么的
回復

使用道具 舉報

5#
ID:130230 發表于 2020-9-2 23:46 | 只看該作者
不會出錯,加到65535后再加1就從0開始重新加。如果你懂一點匯編就明白了。這是是匯編里面常用的小技巧。
回復

使用道具 舉報

6#
ID:213173 發表于 2020-9-3 07:22 | 只看該作者
變量不受約束和溢出肯定會出錯,會不會導致災難性后果就要看這個變量在系統中的具體作用。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产成人黄色 | 久久大 | 欧美在线精品一区 | 国产精品久久久久久亚洲调教 | 久久精品久久精品久久精品 | 亚洲成人三级 | 欧美精品一区二区在线观看 | 日韩在线观看中文字幕 | 国产黑丝在线 | 久久久这里只有17精品 | 久久亚洲综合 | 99久久久久 | 性生生活大片免费看视频 | 理论片免费在线观看 | 粉嫩国产精品一区二区在线观看 | 日韩一区二区三区在线观看视频 | 国产高清在线 | 亚洲社区在线 | 欧美精品一区二区三区在线播放 | 在线观看视频一区二区三区 | 91精品国产91久久久久游泳池 | 日韩成人免费视频 | 一区二区三区视频在线观看 | 亚洲精品一区二区在线观看 | 国产视频久久 | 日本精品视频在线 | 亚洲一区二区三区乱码aⅴ 四虎在线视频 | 欧美日韩成人在线 | 91视频进入| 国产超碰人人爽人人做人人爱 | 免费久久精品 | 久久99久久99 | 国产日韩精品一区二区 | 亚洲综合色 | 免费观看av| 91亚洲精华国产 | 成人一区二区三区在线观看 | 国产一区二区精品在线观看 | 欧美成人一级视频 | 欧美一级在线 | 99精品电影 |