C 資料型別

2021-05-27 10:12:05 字數 4204 閱讀 3670

一般來說,計算機要儲存和處理不同的資料型別,在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類 數值型別,引用型別,指標型別。指標型別僅在不安全 中使用。值型別包括簡單型別 如字元型,浮點型和整數型等 集合型別和結構型。引用型別包括類型別,介面型別,代表型別和陣列型別。值型別和引用型別的不同之處是值型別的變數值直接包含資料,而引用型別的變數把它們的引用儲存在物件中。...