您
可以在程式中寫下1、1.0、3.14159這樣的數值,這類數值稱之為「字面常量」(Literal
contstant),預設程式中若寫下一個整數值,例如1這個數值的話,預設它會是個int型態無正負號的數值,而如果您在程式中寫下1.0,3.14
等小數時,預設它會是double型態的數值,例如下面這個程式所顯示出來的大小分別是int與double的大小:#include <stdio.h> 執行結果:
整數字面常量可以用8進位、10進位與16進位來表示,一般習慣使用10進位,如果您要使用8進位的字面常量,開 頭加上0就可以了,如果要使用16進位的 字面常量,開頭加上0x,例如下面的程式各顯示10進位制26的8進位與16進位寫法: #include <stdio.h> 由於printf 指定%d輸出整數值時,都會以10進位制顯示,所以上面的程式中三行陳述都會顯示26。 您可以在整數值之後加上L或l,表示該整數值要是long型態,因為l容易與數字1搞混,所以通常使用L,例如1L,您也可以指定為無號整數,可使用U或 u來指定,例如1U,L與U可以同時指定,例如1UL或1LU;對於浮點數的話,則可以在寫下浮點數值時以F或f表示數值要使用float型態,例如 3.14f,也可以使用科學記號,例如20000可以表示為2e4。 字元字面常量則以單引號來包括一個字元,例如'A'、'1'都表示一個字元字面常量,而有一些字元與C中所使用的相同,例如"、'、\等,要在程式中 表現這些字元則要使用escape sequence,即\"、\'、\\,其它還有一些「不可見字元」,也要以escape sequence來表示,下表列出常用的escape sequence:
八進位ASCII碼如'\062'則是字元'2',十六進位ASCII碼如"\x48"為字元'H',一個輸出的例子如下所示,以十六進位ASCII碼顯示"2 個HELLO": #include <stdio.h> char宣告一個字元 變數,而在printf()中要顯示該變數時,使用格式指定碼(format specifier)%c來指定,執行結果如下:
更多的格式指定碼之使用,將在 printf() 與 scanf() 中介紹。 |