<li id="8g3ty"><tbody id="8g3ty"><th id="8g3ty"></th></tbody></li>
    <label id="8g3ty"><samp id="8g3ty"></samp></label>
  • <span id="8g3ty"></span>

    1. <center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
    2. <bdo id="8g3ty"><meter id="8g3ty"><bdo id="8g3ty"></bdo></meter></bdo><center id="8g3ty"><optgroup id="8g3ty"></optgroup></center>
      <label id="8g3ty"><samp id="8g3ty"></samp></label>

    3. 電子開發網

      電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
      搜索: 您現在的位置: 電子開發網 >> 基礎入門 >> Arduino開發學習 >> 正文

      Arduino-變量和常量-系列3

      作者:佚名    文章來源:網絡    點擊數:    更新時間:2023/11/26

      在之前的學習中,我們簡單介紹了Arduino的數據類型,下面一起來學習Arduino的變量和常量。首先是變量,在開始了解變量之前,理解變量的范圍是非常重要的。

       

      什么是變量范圍?Variable Scope

      Arduino使用的 C 語言變量中有一個名為scope的屬性。scope 也就是范圍是程序的一部分,變量又分為三種類型,分別是:

      1. 在函數或塊內部的變量,稱為局部變量。
      2. 在函數參數中定義的變量,稱為形參。
      3. 在所有函數之外定義的變量,它被稱為全局變量。

      局部變量 Local Variables

      在函數或區塊中聲明的變量是局部變量。它們只能由位于函數或代碼塊內的語句使用,局部變量不會在函數或代碼塊之外起作用。 下面是使用局部變量的示例 :

      Void setup () {
      }
      Void loop () {
      int x , y ;
      int z ; //聲明局部變量
      x = 0;
      y = 0; //實際參數
      z = 10;
      }

      全局變量 Global Variables

      全局變量在所有函數之外進行定義,通常在程序的頂部區域。全局變量將在程序的整個生命周期中發揮作用。全局變量一旦定義,任何函數都可以訪問和使用它,也就是說,一個全局變量在聲明之后在整個程序中都可以使用。下面的示例使用了全局變量和局部變量 :

      Int T , S ;
      float c = 0 ; //聲明全局變量;
      Void setup () {
      }
      Void loop () {
      int x , y ;
      int z ; //聲明局部變量
      x = 0;
      y = 0; //實際參數
      z = 10;
      }

      形式參數 formal parameter

      在函數定義中出現的參數可以看做是一個占位符,它沒有數據,只能等到函數被調用時接收傳遞進來的數據,所以稱為形式參數,簡稱形參。 形參變量只有在函數被調用時才會分配內存,調用結束后,立刻釋放內存,所以形參變量只有在函數內部有效,不能在函數外部使用。

      實際參數 actual parameter

      實參本身不屬于變量范疇,它是函數被調用時給出的參數包含了實實在在的數據,會被函數內部的代碼使用,所以稱為實際參數,簡稱實參。實參可以是常量、變量、表達式、函數等,無論實參是何種類型的數據,在進行函數調用時,它們都必須有確定的值,以便把這些值傳送給形參,所以應該提前用賦值、輸入等辦法使實參獲得確定值。

      形參和實參的聯系

      實參和形參在數量上、類型上、順序上必須嚴格一致,否則會發生“類型不匹配”的錯誤。當然,如果能夠進行自動類型轉換,或者進行了強制類型轉換,那么實參類型也可以不同于形參類型。

      函數調用中發生的數據傳遞是單向的,只能把實參的值傳遞給形參,而不能把形參的值反向地傳遞給實參;換句話說,一旦完成數據的傳遞,實參和形參就再也沒有瓜葛了,所以,在函數調用過程中,形參的值發生改變并不會影響實參。

      請看下面的例子:

      #include <stdio.h>
      /*
      *計算從m加到n的值
      */
      int sum(int m, int n) {
      int i;
      for (i = m+1; i <= n; ++i) {
      m += i;
      }
      return m;
      }
      int main() {
      int a, b, total;
      printf("Input two numbers: ");
      scanf("%d %d", &a, &b);
      total = sum(a, b);
      printf("a=%d, b=%d\n", a, b);
      printf("total=%d\n", total);
      return 0;
      }

      在這段代碼中,函數定義處的 m、n 是形參,函數調用處的 a、b 是實參。通過 scanf() 可以讀取用戶輸入的數據,并賦值給 a、b,在調用 sum() 函數時,這份數據會傳遞給形參 m、n。

      Tags:Arduino,變量和常量,程序  
      責任編輯:admin
    4. 上一個文章:
    5. 下一個文章:
    6. 請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
      1分 2分 3分 4分 5分

      還可以輸入 200 個字
      [ 查看全部 ] 網友評論
      關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
      返回頂部
      刷新頁面
      下到頁底
      晶體管查詢
      主站蜘蛛池模板: 色综合久久88色综合天天 | 国产福利电影一区二区三区久久久久成人精品综合 | 人人婷婷色综合五月第四人色阁| 色综合久久久久久久久久| 丁香六月婷婷综合激情动漫| 久久88色综合色鬼| 婷婷亚洲综合五月天小说在线| 国产综合久久久久| 亚洲日韩在线中文字幕综合| 伊伊人成亚洲综合人网7777| 亚洲欧美综合精品成人导航| 久久久久综合一本久道| 97久久综合精品久久久综合| 天天综合天天添夜夜添狠狠添| 久久一本色系列综合色| 伊人久久大香线蕉综合爱婷婷| 色综合久久久久综合99| 精品国产第一国产综合精品| 久久精品国产91久久综合麻豆自制| 国产亚洲综合视频| 色综合久久88色综合天天| 色狠狠色狠狠综合天天| 色诱久久久久综合网ywww| 狠狠色伊人亚洲综合成人| 伊人色综合久久大香| 狠狠色丁香久久婷婷综合| 一本综合久久国产二区| 婷婷五月六月激情综合色中文字幕 | 国产成人综合久久精品免费| 久久亚洲精品人成综合网| 久久大香线蕉综合爱| 久久―日本道色综合久久| 国产成人精品综合久久久久| 综合久久一区二区三区| 婷婷四房综合激情五月在线| 色噜噜狠狠成人中文综合| 亚洲av综合av一区二区三区| 色五月五月丁香亚洲综合网| 一本综合久久国产二区| 久久精品国产亚洲综合色 | 色天使久久综合网天天|