編寫程式,首先面對的是資料。在程式中,資料該如何表示出來?根據表示的方式不同,資料通常有兩種表示方式:直觀表示和指代表示。本章將詳細講解這兩種表示方式本文選自明明白白學c#大學霸。
在**編寫中,資料往往是可以直接寫到**中的。對於這些資料,人們可以通過字面所表達的意思,獲知其含義,所以它們也被稱為字面量。字面量也叫常量。根據字面量所代表的資料內容,分為數字字面量和文字字面量。本節將先講解數字字面量本文選自明明白白學c#大學霸。
根據是否帶小數部分,數字資料又分為整數和小數。因此數字字面量也分為整型字面量和浮點型字面量。下面分別來看這兩種字面量。
整數是最簡單、最常用的資料形式。我們日常寫的100、32都是整數。在程式語言中,這種寫作方式被稱為十進位制整數。為了規範寫法,程式設計中對十進位制整數的寫法,提出以下規定:
q 十進位制整數是以10為基礎的數字系統,逢十進一。
q 由0、1、2、3、4、5、6、7、8、9十個基本數字組成。
q 十進位制整數不能以0開頭。
十進位制表達方式最貼近人們使用習慣,所以用途最廣泛。但在程式設計中,還有一些特殊領域,使用十進位制就不是很方便。
1.十六進製制
【示例1-1】在計算機中,每種顏色都由紅、綠、藍三種顏色搭配而成。而每種顏色通常使用0~255來表示顏色深度,也就是8位二進位制數字。然後將表示三種顏色三組8位二進位制數字,連線起來構成乙個數字。這個數字就是這個顏色的值。構成如圖1.1所示。
圖1.1. 顏色構成
例如,褐色由102的紅色、51的綠色、0的藍色構成。十進位制表達就是6697728。這樣的乙個數字很難去看出顏色的構成。
為了方便程式設計人員設定顏色值,我們可以使用十六進製制寫法。十六進製制的寫作規範如下:
q 十六進製制整數是以16為基礎的數字系統,逢十六進一,借一當十六。
q 由0~9,a~f組成。其中,a~f分別對應10~15。
q 十六進製制數的表示以0x或0x作為字首。
對於褐色就可以寫為0x663300。其中,0x是十六進製制字首。而66是102的十六進製制寫法;33是51的十六進製制寫法;00是0的十六進製制寫法。與十進位制的6697728相比,十六進製制的0x663300就直觀多了。程式設計人員可以很輕鬆設定顏色值。
對於十六進製制和十進位制的轉換,這裡給出乙個簡單的方法。開啟windows計算器,在「檢視」選單的下拉列表中選擇「程式設計師」項。在開啟的計算器中選擇「十六進製制」,然後輸入a,再單擊「十進位制」,就會顯示十六進製制數a對應的十進位制數10。轉換十進位制與十六進製制的程式設計師計算器如圖1.2所示。
圖1.2 程式設計師計算器
2.八進位制
除了十六進製制和十進位制,還有另外一種常見的進製——八進位制。下面我們再看乙個經典的例子。
【示例1-2】在超級瑪麗遊戲中,共有八大關。而每大關分為四小關。而每個小關中由兩個場景構成。超級瑪麗遊戲介面與關卡設定如圖1.3和1.4所示。在圖1.3中,遊戲進行到第一大關的第二小關的第乙個場景。這時候對應整個遊戲的場景編號為2。而整個遊戲的進度都是通過場景編號來記錄和標識的。
圖1.3 超級瑪麗遊戲介面 圖1.4 超級瑪麗遊戲關卡
當遊戲開發者讓瑪麗進入第八大關的第一小關第乙個場景。這是,如果使用十進位制規範表示,當前遊戲進度為場景56。對於這樣的乙個數字,開發者必須手工計算才能得出來。萬一計算錯誤,瑪麗就該「穿越」了。這個時候,就可以使用八進位制的形式來表示。八進位制的寫作規範如下:
q 八進位制整數是以8為基礎的數字系統,逢八進一。
q 由0~7組成。
q 八進位制數必須以0作為字首。
對於場景56就可以寫為070。即八進位制數070與十進位制數56具有相同的意義。使用八進位制數070可以很直觀地看出當前遊戲進度為第八大關第一小關。
對於八進位制和十進位制的轉換,這裡給出乙個簡單的方法。開啟windows計算器,在「檢視」選單的下拉列表中選擇「程式設計師」項。在開啟的計算器中選擇「八進位制」,然後輸入70,再單擊「十進位制」,就會顯示八進位制數70對應的十進位制數56。
注意:為了區分八進位制與十進位制整數,八進位制整數以0作為字首。而為了區分八進位制與十六進製制,十六進製制整數以0x或0x作為字首本文選自明明白白學c#大學霸。
字面量和整數字面量
字面量是指c c 源 中直接使用的常量,字面量的意思是 一眼看上去是什麼就是什麼 例如語句 int x 10 中10就是字面量,它相對於變數,只有乙個確定的值不能改變,這個值就是它看上去的值。c c 中的字面量有一下幾種 1.0和正整數,如10 123等 負整數不是字面量,因為加了 運算子 2.浮點...
Go字面量(字面常量)
目錄 字面量字面量型別 整型字面量 浮點型字面量 複數型別字面量 字元型字面量 字串字面量 程式語言源程式中表示固定值的符號叫做字面量,也稱字面常量。一般使用裸字串行來表示不同型別的值。字面量可以被程式語言編譯器直接轉換為某個型別的值。go的字面量可以出現在兩個地方 一是用於常量和變數的初始化,二是...
復合字面量
復合字面量,是除了符號常量之外的常量,例如 5是int的字面常量,1.2是double的字面常量,a 是char的字面常量,hello 是字串的字面常量。一般來說,字元常量可以方便初始化變數,而且可以用於相應運算。其中較為特殊的還有陣列的復合字面常量。形如 int 2 我們可以通過這樣的字面常量來初...