日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言volatile_[技术]为什么单片机C语言编程时某一变量有时乱码

發布時間:2023/12/1 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言volatile_[技术]为什么单片机C语言编程时某一变量有时乱码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近一個項目里面,在KEIL中用C語言在單片機里面定義了一個狀態機全局變量,這個變量隨時會改變,用于切換觸摸屏的界面,

可是程序運行中出現了一個問題,這個狀態機號總是出現了被莫名奇妙改變的問題,導致觸屏不能正常跳轉到預設的界面,

經過檢查分析,可能有兩個原因:

?)全局變量與局部變量同名重復定義。有可能是你定義了一個與全局變量一樣名字的局部變量,并在子程序里面修改了變量值。

?)缺少volatile修飾符。C語言中volatile修飾符不常用,它的作用是明確該變量是變化的,防止編譯器對該變量進行優化,讓處理器在運行時每次都從內存中讀取數據,而不是用寄存器中的備份數據。此修飾命令建議僅對全局有重要作用的關鍵變量使用。

用法:定義時:volatile unsigned char a;//定義了一個字符變量a

經檢查是第2個原因,在程序中定義變量時添加volatile修飾符后問題解決。

關注我,分享科技開發、高效思維、理財等的點點滴滴。微信公眾號:yonkotech

總結

以上是生活随笔為你收集整理的c语言volatile_[技术]为什么单片机C语言编程时某一变量有时乱码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。