一般來說,計算機要儲存和處理不同的資料型別,在c#中有基本的資料型別和使用者自定義資料型別以及引用型資料。我們先學習下基本的資料型別,也就是系統自帶的資料型別。每種資料型別都要佔據系統記憶體的一定空間,例如c#中的整數int ,乙個整數佔4個位元組,也就是32位;計算機是用0和1二進位制來表示和處理資料的,所以乙個32位的整數的最大值是:+2的31次冪-1,最小值是-2的31次冪-1。同時要注意的是,資料中還有無符號和有符號之分。大家在計算機文化基礎中應該學過,例如,int 和uint兩種型別的資料都是32位,但是無符號的uint中沒有正負之分,c。
int型別的範圍是:(-2的31次冪-1——+2的31次冪-1);而uint型別的數值範圍是:0——2的32次冪-1。接下來我們學習下c#的各種基本資料型別。
整數型資料的定義比較簡單,方法有兩種:
(1):int page=888; //在定一定的同時賦值
(2):int page;
page=888;//先定義再賦值。其他的不說了,方法是一樣的。:
2.2布林型資料
bool型別資料在記憶體只佔一位,所以它的值也只有兩個:0和1;在很多應用中用來表示條件是否成立或者是表示式的真假。true表示真,false表示假。
bool flag=fale; bool text=true;
bool real=(3==5);//判讀3是否等於5,返回值real=false;
2.3字元型char
所有字元型型別資料都有個對應的ascii碼值(0~127);
字元型資料的定義要特別注意:
char
ch =
'x';
char
ch1 =
'a';
在』 『
之間的字元只能有乙個。現在來看個非法的例子:
char
ch3=
'222';
按f5執行後會出現錯誤:錯誤1:字元文字中的字元太多
2.3:字串string
字串型別的資料定義是這樣的:string
name =
"bianceng";
在定義字串變數的時候要特別的主要符號:」 」;不要把它和字元的定義搞混淆了。
字串在儲存時候的有個結束符:\o 以
string
name =
"bianceng"
為例,其儲存結構如下: b
ianc
eng\0
\0表示字串的結束.
2.4實數型
實數型資料報括:浮點型float,雙精度 double和 小數型decimal,三種資料型別的特徵如下表所示:
型別大小(位)
精度(有效數字)位
float
double
decimal
三類資料都有正負之分。
資料的定義使用如下:
double price=157.144;
float price=888.777f;
decimal price=999.999m;
2.5char型別。
char型別的可能值對應於統一字元編碼標準(unicode)的字符集。
char型別與其他整數型別相比有以下兩點不同之處:
1、沒有其他型別到char型別的隱式轉換。即使是對於sbyte,byte和ushort這樣能完全使用char型別代表其值的型別, sbyte,byte和ushort到char的隱式轉換也不存在。
2、char型別的常量必須被寫為字元形式,如果用整數形式,則必須帶有型別轉換字首
三..其他複雜資料型別
c#中其他的複雜資料型別在這裡不介紹,在後續的章節中會做詳細的講解。
附ascii表:
a s c i i值
控制字元
a s c i i值
字元 a s c i i值
字元 a s c i i值
字元 0 0 0
n u l
0 3 2
( s p a c e )
0 6 4
@ 0 9 6
` 0 0 1
s o h
0 3 3
! 0 6 5
a 0 9 7
a 0 0 2
s t x
0 3 4
" 0 6 6
b 0 9 8
b 0 0 3
e t x
0 3 5
# 0 6 7
c 0 9 9
c 0 0 4
e o t
0 3 6
$ 0 6 8
d 1 0 0
d 0 0 5
e n d
0 3 7
% 0 6 9
e 1 0 1
e 0 0 6
a c k
0 3 8
& 0 7 0
f 1 0 2
f 0 0 7
b e l
0 3 9
』 0 7 1
g 1 0 3
g 0 0 8
b s
0 4 0
( 0 7 2
h 1 0 4
h 0 0 9
h t
0 4 1
) 0 7 3
i 1 0 5
i 0 1 0
l f
0 4 2
* 0 7 4
j 1 0 6
j 0 11
v t
0 4 3
+ 0 7 5
k 1 0 7
k 0 1 2
f f
0 4 4
, 0 7 6
l 1 0 8
l 0 1 3
c r
0 4 5
-0 7 7
m 1 0 9
m 0 1 4
s o
0 4 6
。 0 7 8
n 11 0
n 0 1 5
s i
0 4 7
/ 0 7 9
o 111
o 0 1 6
d l e
0 4 8
0 0 8 0
p 11 2
p 0 1 7
d c 1
0 4 9
1 0 8 1
q 11 3
q 0 1 8
d c 2
0 5 0
2 0 8 2
r 11 4
r 0 1 9
d c 3
0 5 1
3 0 8 3
s 11 5
s 0 2 0
d c 4
0 5 2
4 0 8 4
t 11 6
t 0 2 1
n a k
0 5 3
5 0 8 5
u 11 7
u 0 2 2
s y n
0 5 4
6 0 8 6
v 11 8
v 0 2 3
e t b
0 5 5
7 0 8 7
w 11 9
w 0 2 4
c a n
0 5 6
8 0 8 8
x 1 2 0
x 0 2 5
e m
0 5 7
9 0 8 9
y 1 2 1
y 0 2 6
s u b
0 5 8
: 0 9 0
z 1 2 2
z 0 2 7
e s c
0 5 9
; 0 9 1
[ 1 2 3
0 3 0
r s
0 6 2
>
0 9 4
^ 1 2 6
~ 0 3 1
u s
0 6 3
? 0 9 5
_ 1 2 7
□
c 資料型別
型別可分為 值型別,引用型別 值型別 直接存放真正的資料,值型別都有固定的長度,值型別的變數都儲存在 堆疊 stack 上。作為值型別的變數,每個都有自己的資料,因此對乙個變數的操作不會影響其他變數。引用型別 儲存讀資料的記憶體位址的引用,位於受管制的堆 heap 上作為引用型別的變數可以引 用同一...
C 資料型別
bool system.boolean 1位元組 byte system.byte 1位元組無符號 sbyte system.sbyte 1位元組有符號 short system.int16 2位元組 ushort system.uint16 2位元組 int system.int32 4位元組 u...
C 資料型別
c 的資料型別可以分為3類 數值型別,引用型別,指標型別。指標型別僅在不安全 中使用。值型別包括簡單型別 如字元型,浮點型和整數型等 集合型別和結構型。引用型別包括類型別,介面型別,代表型別和陣列型別。值型別和引用型別的不同之處是值型別的變數值直接包含資料,而引用型別的變數把它們的引用儲存在物件中。...