iT邦幫忙

2021 iThome 鐵人賽

DAY 8
0
自我挑戰組

Maker making IoT !!系列 第 8

[Day7] IoT Maker之Coding知識科普 - (Variable)

1.前言

今天本來要進入函示Part2的,但後來想想這次系列文章面對的是全齡層(普遍級),前面好像也都沒有說過關於Coding時候的一些規範,因此接下來2天就跟大家來介紹一下在做一位IoT Maker時相當重要的Code技能之基礎知識,而今天主要是介紹變數、變數型態、迴圈、判斷,變數是什麼。大家可以把那個當成是一個容器,它可以裝許多不同的數值,當然這個容器也有大小,大小的話等等再談,那迴圈是甚麼呢?迴圈就是規律性的重複執行指令直到條件滿足為止,例如:晝夜交替、呼吸...等事情,最後判斷,字面上的意思很明顯,就是判斷 (廢話模式On),判斷什麼呢,就是判斷數值是否正確,或容器內數值是否正確(當然也可以判斷不正確),那下面開始進入主題。

2.變數及變數名稱的愛恨情仇

變數(Variable)是指該數值是可變的,而在定義變數的數值時需要一個名稱,我們通常會稱為變數名稱,變數名稱相當於號碼牌,因為我可以透過變數名稱,就能得知我要更動未知數的數值,所以變數名稱也相當於一個號碼牌,就可以透過該號碼牌得知我要尋找這個未知數,那都說變數名稱了,總該會有命名的困擾吧?那這點就無需多擔心,因為變數名稱的命名很自由,只有些許規定及不要用到關鍵字(keyword)就OK,關鍵字的部分稍後會講解到,那現在繼續說變數的命名多簡單,例如我把變數名稱命名,Hello、Apple123等等的都可以,所以這就代表英文及數字都支援命名,而有些程式語言會支援用中文(Arduino不支援喔0u0)去命名變數名稱,但在真正使用時,大家都是使用英文的,因為中文還是會有些詬病,例如:外國人看不懂及維護時很麻煩,因為要中英文一直切換,但也有優點,可以教國小、國中生即不會英文者。

圖片取自:使用者繪製

圖片取自:使用者繪製

上方兩張圖分別是定義變數的兩種用法,上方為先定義變數名稱,好處在於我可以在後續在定義要儲存的數值為多少,下方為定義變數名稱及要儲存的數值為多少,那我這邊先是使用150的數值,後續也會介紹它的最大值跟最小值的區間,而這些都與於在資料型別中,所以等等才會介紹到~。

那接下來各位看上圖應該都注意到除了變數名稱及數值,還需要資料型別和運算子及;做組合,運算子會在下一篇做講解,所以我們現在先講資料型別。

3.變數的資料型別(態)

資料型別(態),主要是規定變數的格式,例如設置變數數值的最大值及最小值或是可以儲存什麼,那這邊也沒啥好講了(但很重要),所以直接看下面吧。

表格取自:使用者繪製

看到上面有許多資料型態,而每定義一個變數都會消耗位元組(Byte),所以資料型態牽扯到記憶體的使用量,但因為現在我們所教的程式都屬於較小型的所以不會特別去限制型態的大小,所以大多數都是使用int型態,除了程式上常使用的int還可以使用long等等的資料型態,各位也可以嘗試使用不同的資料型態去練習。

4.命名變數名稱規則

  1. 變數名稱可包含英文字母、數字
  2. 變數名稱開頭不能是數字
  3. 變數名稱大小寫有差
  4. 變數名稱應該設為有意義的名稱
  5. 變數名稱不能是特殊符號(_及$除外)

那除了以上這5點還有一點就是不會用關鍵字去命名(keyword),例如上面有提到的int(因為是資料型態),除了int之外還有很多,因為這些在Arduino裡面都有特殊的意義,所以就會無法使用這個命名,但是可以在後面多加個數字或英文就可以使用了(被打XD。

歡迎交流

好了,今天的內容較為基礎,因為他就是程式的地基,是每個踏入程式的第一步,就很像網路上每個工程師或學程式的都會在執行程式時印出HelloWorld了,這個習慣都已經成為每人的習慣起手式,但其實這步驟也是測試此程式可不可以使用,而Arduino都是有些基礎才開始接觸的,並不是一張白紙直接碰觸,但是為了每人的起跑點都是相同的,所以最基礎的也都會講解到,所以一起跟上吧,那明天會講解到剩下的,像是判斷及迴圈,那就好好期待明天吧~


上一篇
[Day6] 呼吸燈製作
下一篇
[Day8] IoT Maker之Coding知識科普 - (縮排&條件邏輯判斷)
系列文
Maker making IoT !!30

尚未有邦友留言

立即登入留言