iOS_04_數據類型、常量、變量


一、數據

  1.什么是數據

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

  2.數據的分類

    * 計算機種存儲的數據可以分為兩種:靜態數據和動態數據。

    * 靜態數據

      # 概念:靜態數據是指以些永久性的數據,一般存儲在硬盤中,硬盤存儲空間一般都比較大,現在普通計算機的硬盤都有500G左右,因此硬盤中可以存放一些比較大的文件。

      # 存儲的時長:計算機關閉之后在開啟,這些數據依舊還在,只要你不主動刪掉或者硬盤沒壞,這些數據永遠都在。

      # 那些是靜態數據:靜態數據一般是以文件的形式存儲在硬盤上,比如文檔、照片、視頻等。

    * 動態數據(臨時數據)

      # 概念:動態數據指在程序運行過程中,動態產生的臨時數據,一般存儲在內存中。內存的存儲空間一般比較小,現在普通計算機的內存只要4G左右,因此要謹慎使用內存,不要占用太多的內存空間。

      # 存儲的時長:計算機關閉之后,這些臨時數據就會被清除。

      # 哪些是動態數據:當運行某個程序(軟件)時,整個程序就會被加載到內存中,在程序運行過程中,會產生各種各樣的臨時數據,這些臨時數據都是存儲在內存中的。當程序停止運行或者計算機被強制關閉時,這個程序產生的所有臨時數據都會被清除。

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

       程序員最關心的是什么數據呢?

    * 靜態數據和動態數據的轉換

        # 靜態 -> 動態      硬盤( jjj.mp4 ) -轉-   內存 (暴風影音 ) 

        # 動態 -> 靜態     互聯網 -> 內存(迅雷) -> 硬盤(jjj.mp4)

  3.數據的大小

    * 不管是靜態還是動態數據,都是0和1組成的。0和1如果組成這么多得數據?

    * 數據都有大小,靜態數據就會占用硬盤空間,動態數據就會占用內存空間。

    * 數據越大,包含的0和1就越多,比特位和字節

    * 1kb = 1024b, 1MB = 1024kb, 1G =1024MB,1TB = 1024GB

  4.app中得各種數據

    * 游戲分數、聊天記錄、新聞 等

  5.C語言中的數據類型

    由於app中得數據種類繁多,為了方便操作數據,c語言數據進行了分類

    * 空類型 :void

    * 指針類型 :  void*

    * 構造類型  :  數組、struct(結構體)、union(共用體)、enum(枚舉)

    * 基本數據類型   : int(整型)、char(字符型)、浮點型 float(單精度浮動型)double(雙精度浮點型)。

二、常量

  1.什么是常量

    * 常量,表示一些固定的數據

  2.常量的分類

    * 整型常量(int)

      # 包含了所有的整數,比如6、27、108、-190、-278等

    * 浮點型常量(float\double)

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

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

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

    * 字符常量(char)

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

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

    * 字符串常量 

      # 將一個或者多個字符用雙引號(“”)括起來,這樣構成的就是字符串常量。比如“6”、“男”、“哇哈哈”、“jdjjl”、“my_car3”、其實printf("hello world");語句中得“hello world”就是字符串。

 

三、變量

  1、 什么是變量

    * 當一個數據的值需要經常改變或者不確定是,就應該用變量來表示。比如有些積分。

  2、定義變量

    * 目的

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

      # 定義變量的目的是:在內存中分配一塊存儲空間給變量,方便以后存儲數據。

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

    * 格式

      # 變量類型 變量ming;

      比如 int num;

      # 變量屬於標識符

      # 變量類型

      # 不同的類型變量占用不同的大小的存儲空間。內存極其有限,分配適當的存儲空間。

      # 約束變量所存放的數據類型(方便運算)

    * 實例

    int main()

    {

      int i; char c; int a、b; return 0;

    }

  3.變量的使用

    * 賦值

      # 往變量里面存點東西,就是賦值。賦值語句后帶個分號;

      i = 10;

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

      # 第一次賦值可以稱為初始化。

      # 初始化的兩種形式

        - 先定義,后初始化:int a; a = 10;

        - 定義同時初始化: int a = 10;

    * 修改 

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

        i =10;

        i = 20;  

        變量最后的值為20;

      # 使用printf()輸出一個\多個變量的值

        int a = 10, c=11

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

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

        double height = 1.55;

        char blood = 'A';

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

      # 簡單的加減操作

        int a = 10 +20;

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

        int score;

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

    * 變量之間值的傳遞

      # 可以將一個變量的值賦值給另一個變量

        int a = 10;

        int b = a;

      # 連續賦值

        a = b = 10;

  4.常見錯誤

    * 變量名相同 int a = 10; int a = 12;

    * 變量的作用域不對

      # 變量的創建和釋放的過程

      # 代碼塊的作用域{int a = 10;}

 

 

 

 

 

 

 

 

      


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM