摘要:C 基本概念
資料型態
|
型態說明
|
位元組
|
表示範圍
|
|
整數
|
long int
|
長整數
|
4
|
-2147483648~2147483647
|
int
|
整數
|
4
|
-2147483648~2147483647
|
|
short int
|
短整數
|
2
|
-32768~32767
|
|
char
|
字元
|
1
|
0~255
|
|
浮點數
|
float
|
浮點數
|
4 (6位精準)
|
1.2e-38~3.4e+38
|
double
|
倍精度浮點數
|
8 (15位精準)
|
2.2e-308~1.8e+308
|
|
|
long double
|
|
10 (19位精準)
|
3.4e-4932~1.1e+4932
|
資料型態
|
同義
|
型態說明
|
位元組
|
表示範圍
|
_Bool
|
bool
|
|
|
|
unsigned char
|
|
|
1
|
0~255
|
unsigned int
|
unsigned
|
無號整數
|
4
|
0~4294967295
|
unsigned short
|
unsigned short int
|
無號短整數
|
2
|
0~65535
|
long
|
|
|
4
|
-2147483648~2147483647
|
unsigned long
|
unsigned long int
|
無號長整數
|
4
|
0~4294967295
|
long long
|
|
|
8
|
-9223372036854775808~
9223372036854775807
|
unsigned long long
|
unsigned long long int
|
|
8
|
0~18446744073709551615
|
浮點數: float num = 5.46F
字母F表示為一個浮點數,如果沒有加上F,系統就認為是double型別,需注意如果把double型態的常數設給float型態的變數,會有型態轉換上的問題,ㄧ般表示為double可在尾端標記L或l
float 4 byte 1.2*10^-38~3.4*10^38 float的精度為7~8個數字
double 8byte 2.2*10^-308~1.8*10^308 double的精度為15~16個數字
列印 print使用%f,%e是以指數型式印出
245.32 = 2.4532E2 即2.4532*10^2
0.07652=7.652E-2
16進制浮點常數
0xa.fP-10 即為 (10 + 15/16)* 2 ^-10,p表示為16進制浮點常數
print
格式碼
|
說明
|
格式碼
|
說明
|
%c
|
字元
|
%%
|
印出百分號
|
%d
|
十進位整數
|
%o
|
無號八進位整數
|
%ld
|
長整數
|
%s
|
字串
|
%e
|
浮點數,指數e格式
|
%u
|
無號十進位整數
|
%f
|
浮點數,小數點格式
|
%x
|
無號十六進位整數
|
%lld
|
unsign long long
|
%hd
|
short int
|
修飾子
|
功能
|
舉例
|
-
|
靠左對齊
|
%-3d
|
+
|
將數值得正負號顯示出來
|
%+5d
|
空白
|
數值為正值時,留一格空白,為負值時,顯是負號
|
% 6f
|
0
|
將固定欄位長度的數值前空白處填上0(與負號同時使用時,此功能無效)
|
%07.2f
|
整數常數
|
型別
|
0x200
|
int
|
512U
|
unsigned int
|
0L
|
long
|
0xf0fUL
|
unsigned long
|
0777LL
|
long long
|
0xAAAllu
|
unsigned long long
|