首頁>Club>
2
回覆列表
  • 1 # 科技電小二

    很多的應用場景都使用C語言,作為一名從事微控制器C語言程式設計的工程師,和大家分析下這個基礎知識點的大學問。

    那麼C語言程式設計當中,定義的變數型別,決定了什麼?

    在微控制器程式設計中,基本上常用的都是,unsigned char,unsigned int、unsigned long這三種類型,變數的定義不同的型別,就決定了位寬,也就決定了變數的資料範圍。

    char 型別,是8位有符號資料型別,範圍是-128~127。

    unsigned char 型別,是8位無符號的資料型別,範圍是0-255,總共256個數字。

    int 型別, 16位有符號資料型別。範圍是-32768~32767。

    unsigned int型別,是16位無符號資料型別,範圍是0-65535,總共65536個數字

    unsigned long,是32位的資料,範圍是0-2^32。

    在微控制器程式設計時候,需要根據設定變數的需求,選擇定義合適的變數型別。比如你想用的變數是超過255,就必須用unsigned int 型別。否則會出現異常。

    但在不同的開發平臺,類型範圍有可能不一致

    在不同的微控制器平臺當中,unsigned char,unsigned int,unsigned long 代表的位寬會存在差異。這個與晶片的開發環境有關係.。比如在合泰微控制器的開發環境,unsigned int 型別是與unsigned char 是一樣的。都是8位寬度。 在windows 環境下開發,int型別就是32位寬度。所以需要具體平臺具體分析。

    變數的型別,是微控制器C語言開發的基礎,如果不掌握,有可能設計出來的程式碼和想象中的不一樣。

    雖然這是一個很簡單的技術基礎,但很容易被微控制器初學者,或者C語言程式設計初學者遺漏的知識點。在程式BUG除錯當中,對於初學者來說,也是經常遇到,希望大家都記住。

  • 中秋節和大豐收的關聯?
  • LOL職業比賽隊伍不能超過兩名外援,這個規定竟與當年的神超有關,怎麼評價?