這篇內容,將會講解什麼是資料型態,以及與資料型態相關的知識。有了這些概念,各位會更容易理解,要如何設計程式碼。
本篇教學所使用的系統是Windows 10,如果有按鍵相關的說明,會用Windows的系統來解釋。如果你用的是Mac系統,再麻煩自行換成相對應的按鍵。
在學習本篇內容之前,最好具備以下的前置知識,以免看不懂這篇教學的內容。
在變數的說明中,我們知道變數可以存放,多種不同的資料型態。
那麼,在了解資料型態之後,又有什麼用處呢?答案如下:
下方我會說明,初學者應該要了解的資料型態。這些資料型態,除了在GameMaker中會用到之外,其他的程式語言,也幾乎有相同的東西(可能名字不同而已)。
不過,我並不會說明,所有的資料類型。老實說,有些資料類型,我也還沒看懂,他們的應用場景在哪裡。
如果之後我有使用到,也覺得他們很有用,那麼,我會再找個時間,補上這些資料型態的相關說明。
最後,我也會附上官方的說明書連結,如果遇到沒看過的資料型態,可以從這邊尋找關鍵字,接著再用google去尋找答案。
這裡的實數,與數學裡的實數是一樣的,包含了正數、負數、整數、小數,例如:100、-50、3.14、-6.66。
在官方的說明裡,並沒有詳細講到,實數的範圍有多大(最小值到最大值),但有提到是用64位元雙精度浮點數(64-bit double-precision floating point)來存放的。
如果0的數值,是放在雙精度浮點數的中間,那麼能使用的數字範圍就是2-1024到21024之間。
以下是變數賦值的範例:
a = 10 ;
b = -50 ;
c = 3.14 ;
d = -6.66 ;
布林值只有兩種數值,分別是true和false,這種資料型態,通常會用在邏輯判斷上面。
例如以下的程式碼:
//如果滑鼠的左鍵點下
if mouse_check_button_pressed(mb_left)
{
//執行某些程式碼
}
當滑鼠左鍵點下時,第二行裡面的mouse_check_button_pressed(mb_left)
,就會回傳true,相反的話,就會傳遞false。
當if收到true的指令,那就表示左鍵有按下,那就會執行if裡面的程式碼。
所謂的字串,指的就是文字資料,不管是abcd、中文字、數字、符號,都能用字串的方式,存放在變數當中。
在使用字串時,需要用兩個雙引號來包覆,才能表示雙引號中的內容,是字串資料,例如以下的程式碼:
a = "你好" ;
b = "Hi!" ;
這邊講一個初學者常犯的錯誤,那就是「把實數資料當成字串使用」。各位可以看看以下的程式碼:
//這是錯誤的程式碼
a = 0 ;
show_message(a) ;
第三行的show_message()
,是用來顯示文字的程式碼,括弧裡面的參數,需要放置「字串」類型的數值。
在上面的程式碼中,我們希望顯示,變數當中的數字,也就是0。但用這種方式會發生程式錯誤,理由是:變數的資料類型是「實數」,而不是「字串」。
那正確的寫法呢?答案是把0,改成"0",這樣才表示,變數存放了「文字0」的字串。
a = "0" ;
show_message(a) ;
備註:另一種方法,是把實數資料,轉換成字串資料,未來如果有用到,會再詳細說明。
所謂的陣列,是一種「特殊的變數」。一般的變數,一次只能存放一個數值,而陣列卻可以存放多個數值,並透過索引(index)的方式,來尋找我們所存放的數值。
如果用比較簡單的譬喻,那可以把變數想像成是單人房,而陣列就是旅館或公寓。
由於陣列是程式設計中,非常重要的組成,我們會用單獨的教學來講解:
在不同的程式語言當中,會有不同的資料類型設定,像是GameMaker的數字類型,就只有實數資料一種,有些語言還有分整數、短整數、長整數、浮點數……等等。
因此,在學習新的程式語言時,最好還是看一下他們的資料類型,而不是用原本的概念,來撰寫他們的程式碼。
以下是官方的說明書,如果遇到不懂的資料類型,可以試著從這裡尋找答案:
🔔如果內容對你有幫助,可以按個喜歡,這樣就能讓更多人,接觸到這些棒棒的內容🔔
✨祝各位也能開心的做出好遊戲✨