国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C語言初級講座之二

2019-11-17 05:50:32
字體:
來源:轉載
供稿:網友
  我們已經看到程序中使用的各種變量都應預先加以說明,即先說明,后使用。對變量的說明可以包括三個方面:

  ·數據類型
  ·存儲類型
  ·作用域

  在本講中,我們只介紹數據類型說明。其它說明在以后陸續介紹。所謂數據類型是按被說明量的性質,表示形式,占據存儲空間的多少,構造特點來劃分的。在C語言中,數據類型可分為:基本數據類型,構造數據類型,指針類型,空類型四大類。

  1.基本數據類型

  基本數據類型最主要的特點是,其值不可以再分解為其它類型。也就是說,基本數據類型是自我說明的。

  2.構造數據類型構造數據類型

  是根據已定義的一個或多個數據類型用構造的方法來定義的。也就是說,一個構造類型的值可以分解成若干個“成員”或“元素”。每個“成員”都是一個基本數據類型或又是一個構造類型。在C語言中,構造類型有以下幾種:

  ·數組類型
  ·結構類型
  ·聯合類型

  3.指針類型

  指針是一種非凡的,同時又是具有重要作用的數據類型。其值用來表示某個量在內存儲器中的地址。雖然指針變量的取值類似于整型量,但這是兩個類型完全不同的量,因此不能混為一談。4.空類型在調用函數值時,通常應向調用者返回一個函數值。這個返回的函數值是具有一定的數據類型的,應在函數定義及函數說明中給以說明,例如在例題中給出的max函數定義中,函數頭為: int max(int a,int b);其中“int ”類型說明符即表示該函數的返回值為整型量。又如在例題中,使用了庫函數 sin,由于系統規定其函數返回值為雙精度浮點型,因此在賦值語句s=sin (x);中,s 也必須是雙精度浮點型,以便與sin函數的返回值一致。所以在說明部分,把s說明為雙精度浮點型。但是,也有一類函數,調用后并不需要向調用者返回函數值, 這種函數可以定義為“空類型”。其類型說明符為void。在本講中,我們先介紹基本數據類型中的整型、浮點型和字符型。其余類型在以后各講中陸續介紹。

  對于基本數據類型量,按其取值是否可改變又分為常量和變量兩種。在程序執行過程中,其值不發生改變的量稱為常量,取值可變的量稱為變量。它們可與數據類型結合起來分類。例如,可分為整型常量、整型變量、浮點常量、浮點變量、字符常量、字符變量、枚舉常量、枚舉變量。在程序中,常量是可以不經說明而直接引用的,而變量則必須先說明后使用。

  整型量

  整型量包括整型常量、整型變量。整型常量就是整常數。在C語言中,使用的整常數有八進制、十六進制和十進制三種。

  整型常量

  1.八進制整常數八進制整常數必須以0開頭,即以0作為八進制數的前綴。數碼取值為0~7。八進制數通常是無符號數。

  以下各數是合法的八進制數:

015(十進制為13) 0101(十進制為65) 0177777(十進制為65535)

  以下各數不是合法的八進制數:

256(無前綴0) 03A2(包含了非八進制數碼) -0127(出現了負號)

  2.十六進制整常數

  十六進制整常數的前綴為0X或0x。其數碼取值為0~9,A~F或a~f。

  以下各數是合法的十六進制整常數:

0X2A(十進制為42)  0XA0 (十進制為160)  0XFFFF (十進制為65535)

  以下各數不是合法的十六進制整常數:

5A (無前綴0X)  0X3H (含有非十六進制數碼)

  3.十進制整常數

  十進制整常數沒有前綴。其數碼為0~9。

  以下各數是合法的十進制整常數:

  237 -568 65535 1627

  以下各數不是合法的十進制整常數:

023 (不能有前導0) 23D (含有非十進制數碼)

  在程序中是根據前綴來區分各種進制數的。因此在書寫常數時不要把前綴弄錯造成結果不正確。4.整型常數的后綴在16位字長的機器上,基本整型的長度也為16位,因此表示的數的范圍也是有限定的。十進制無符號整常數的范圍為0~65535,有符號數為-32768~+32767。八進制無符號數的表示范圍為0~0177777。十六進制無符號數的表示范圍為0X0~0XFFFF或0x0~0xFFFF。假如使用的數超過了上述范圍,就必須用長整型數來表示。長整型數是用后綴“L”或“l”來表示的。例如:

  十進制長整常數 158L (十進制為158) 358000L (十進制為-358000)
  八進制長整常數 012L (十進制為10) 077L (十進制為63) 0200000L (十進制為65536)
  十六進制長整常數 0X15L (十進制為21) 0XA5L (十進制為165) 0X10000L (十進制為65536)
  
  長整數158L和基本整常數158 在數值上并無區別。但對158L,因為是長整型量,C編譯系統將為它分配4個字節存儲空間。而對158,因為是基本整型,只分配2 個字節的存儲空間。因此在運算和輸出格式上要予以注重,避免出錯。無符號數也可用后綴表示,整型常數的無符號數的后綴為“U”或“u”。例如: 358u,0x38Au,235Lu 均為無符號數。前綴,后綴可同時使用以表示各種類型的數。如0XA5Lu表示十六進制無符號長整數A5,其十進制為165。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汶川县| 靖州| 包头市| 浏阳市| 西充县| 遵义市| 桐城市| 安平县| 交城县| 龙井市| 嵩明县| 铜鼓县| 邵武市| 故城县| 孟津县| 镇原县| 德昌县| 江山市| 阳原县| 廉江市| 丹寨县| 临朐县| 黔江区| 江孜县| 略阳县| 湘潭县| 尉犁县| 华池县| 金川县| 黄平县| 平陆县| 绥芬河市| 普兰店市| 思南县| 洪洞县| 大悟县| 龙胜| 林州市| 永登县| 弥渡县| 阿拉善右旗|