c中的資料類型、常量、變數

來源:互聯網
上載者:User

標籤:

一、 資料1. 什麼是資料

生活中時時刻刻都在跟資料打交道,比如體重資料、血壓資料、股價資料等。在我們使用電腦的過程中,會接觸到各種各樣的資料,有文檔資料、圖片資料、視頻資料,還有聊QQ時產生的文字資料、用迅雷下載的檔案資料等。

2. 資料的分類

電腦中儲存的資料可以分為兩種:待用資料和動態資料。

1> 待用資料

l 概念:待用資料是指一些永久性的資料,一般儲存在硬碟中。硬碟的儲存空間一般都比較大,現在普通電腦的硬碟都有500G左右,因此硬碟中可以存放一些比較大的檔案。

l 儲存的時間長度:電腦關閉之後再開啟,這些資料依舊還在,只要你不主動刪掉或者硬碟沒壞,這些資料永遠都在。

l 哪些是待用資料:待用資料一般是以檔案的形式儲存在硬碟上,比如文檔、照片、視頻等。

 

2> 動態資料(臨時資料)

l 概念:動態資料指在程式運行過程中,動態產生的臨時資料,一般儲存在記憶體中。記憶體的儲存空間一般都比較小,現在普通電腦的記憶體只有4G左右,因此要謹慎使用記憶體,不要佔用太多的記憶體空間。

l 儲存的時間長度:電腦關閉之後,這些臨時資料就會被清除。

l 哪些是動態資料:當運行某個程式(軟體)時,整個程式就會被載入到記憶體中,在程式運行過程中,會產生各種各樣的臨時資料,這些臨時資料都是儲存在記憶體中的。當程式停止運行或者電腦被強制關閉時,這個程式產生的所有臨時資料都會被清除。

你可能會問:既然硬碟的儲存空間這麼大,為何不把所有的應用程式載入到硬碟中去執行呢?有個主要原因是記憶體的訪問速度比硬碟快N倍。

程式員最關心的是什麼資料呢?

 

3> 待用資料和動態資料的轉換

靜態 -> 動態 

動態 -> 靜態 

 

3. 資料的大小

1) 不管是靜態還是動態資料,都是0和1組成的。0和1如何組成這麼多的資料?

2) 資料都有大小,待用資料就會佔用硬碟的空間,動態資料就佔用記憶體的空間

3) 資料越大,包含的0和1就越多,位元位和位元組

4) 1 KB = 1024 B,1 MB = 1024 KB,1 GB = 1024 MB,1 TB = 1024 GB

 

4. app中的各種資料

 

 

5. C語言中的資料類型

由於app中的資料種類繁多,為了方便操作資料,C語言資料進行了分類

 

 

二、 常量1. 什麼是常量

常量,表示一些固定的資料

 

2. 常量的分類

1> 整型常量(int)

包括了所有的整數,比如6、27、109、256、-10、0、-289等

 

2> 浮點型常量(float\double)

浮點型常量分為double和float兩種資料類型

u double:雙精確度浮點型,其實就是小數。比如5.43、-2.3、0.0等(注意,0.0也算是個小數)

u float:單精確度浮點型,也是小數,比double的精確程度低,也就是說所能表示的小數位元比較少。為了跟double區分開來,float 型資料都是以f結尾的,比如5.43f、-2.3f、0.0f。需要注意的是,絕對不能有10f這樣格式的,編譯器會直接報錯,只有小數才允許加上f。

 

3> 字元常量(char)

u 將一個數字(0~9)、英文字母(a~z、A~Z)或者 其他符號(+、-、!、?等)用單引號括起來,這樣構成的就是字元常量。比如‘6‘、‘a‘、‘F‘、‘+‘、‘$‘等。

注意:單引號只能括住1個字元,而且不能是中文字元,下面的寫法是錯誤的:‘abc‘、‘123456‘、‘男‘

 

4> 字串常量

u 將一個或者多個字元用雙引號("")括起來,這樣構成的就是字串常量。比如"6"、"男"、"哇哈哈"、"abcd"、"my_car4",其實printf("Hello World");語句中的"Hello World"就是字串常量。

那究竟6、‘6‘、"6"在用法上有什麼區別呢?這個先不作討論,以後會介紹。

 

3. 習題

下面的都是什麼類型的常量?

10.6   19.0f  0.0  0  ‘A’  “男”  “mj”  294  ‘+’

 

三、 變數1. 什麼是變數

當一個資料的值需要經常改變或者不確定時,就應該用變數來表示。比如遊戲積分。

 

2. 定義變數

1> 目的

u 任何變數在使用之前,必須先進行定義。

u 定義變數的目的是:在記憶體中分配一Block Storage空間給變數,方便以後儲存資料。

u 如果定義了多個變數,就會為這多個變數分別分配不同的儲存空間。

2> 格式

變數類型  變數名;

比如int num;

l 變數名屬於標識符

l 變數類型

u 不同類型的變數佔用不同大小的儲存空間。記憶體極其有限,分配適當的儲存空間 

u 約束變數所存放的資料類型(方便運算)

3> 執行個體

int main()

 {

     int i;

char c;

int a, b;

     return 0;    

 }

 

 

3. 變數的使用

1> 賦值

l 往變數裡面存點東西,就是賦值。指派陳述式後帶個分號;

i = 10;

注意:這裡的等號=,並不是數學中的“相等”,而是C語言中的賦值運算子,作用是將右邊的常量10賦值給左邊的變數i

l 第一次賦值,可以稱為“初始化”

l 初始化的兩種形式

u 先定義,後初始化:int a;  a = 10;

u 定義的同時進行初始化:int a = 10;

2> 修改

l 可以修改變數的值,多次賦值。每次賦值都會覆蓋原來的值

i = 10;

i = 20;

變數i最後的值是20

l 使用printf輸出一個\多個變數的值

int a = 10, c = 11;

printf("a=%d, c=%d", a, c);

l double\float\char的輸出,格式符的一些小技巧

double height = 1.55;

char blood = ‘A‘;

printf("height=%.2f, 血型是%c",  height,  blood);

l 簡單的加減操作

int a = 10 + 20;

l 沒有初始化時不要拿來使用(下面的寫法是不建議的)

int score;

printf("score=%d", score);

3> 變數之間值的傳遞

l 可以將一個變數的值賦值給另一個變數

int a = 10;

int b = a;

l 連續賦值

a = b = 10;  

 

4. 常見錯誤

1> 變數名相同  int a = 10;  int a = 12;

2> 變數的範圍不對

u 變數的建立和釋放過程

u 代碼塊範圍 {  int a = 10; }

 

5. 習題

1> 交換整型變數a、b的值。比如a=10、b=11;交換之後a的值是11,b的值是10。用兩種方式實現:

u 使用第三方變數

int temp;

temp = a;

a = b;

b = temp;

u 不使用第三方變數

a = b - a;

b = b - a;

a = b + a;

2> 觀察的遊戲介面,思考需要定義多少個變數?

(註:參考於傳智) 

c中的資料類型、常量、變數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.