C語言詳解 基本資料型別 識別符號

2021-05-23 09:07:47 字數 4004 閱讀 3513

一、基本資料型別

1. 基本資料型別的分類:

c語言中的三種基本資料型別是:整型實型字元型。每種型別又可以分為常量和變數。

整型常量:

(1) 十進位制的整型常量:由數字0~9組成。如:0、10、365、-12等。

(2) 八進位制的整型常量:以0開頭,由數字0~7組成。如:0、010、0365、-012、011等。

(3) 十六進製制的整型常量:以0x或0x開頭,由數字0~9、a~z或a~z組成。如:0x11、0xffff、0xa5、-0xac等。

注:c語言系統預設為基本整型常量 。(關於「基本整型」,請參考下面的內容)

整型變數:

(1) 根據整數的最高位是否用作符號位,分為有符號(signed)整型和無符號(unsigned)整型。

(2) 根據整數在計算機記憶體中所占用的空間大小,分為短整型(short int或short)、基本整型(int)和長整型(long int或long)。

short x = 10; 等價於 signed short x = 10; 同時等價於 signed short int x = 10;

int age = 20; 等價於 signed int age = 20;

long z = 10000l; (加l後說明10000是乙個長整型常量,而不是乙個基本整型常量)

注:

(1) c語言系統預設為有符號 整數。

(2) unsigned和signed不能同時出現。

(3) short和long不能同時出現。

實型常量:

在c語言中,實型常量的兩種表現形式:小數形式和指數形式。或者叫做小數點式和字母e(或e)式。

(1) 小數點式:

1. 有且僅有乙個小數點

2. 小數點的左邊和右邊可以有一邊沒有資料,但不能同時沒有資料

舉例:3.14、0.1、10.、0.0、.0、-10.08

(2) 字母e(或e)式:

1. 有且僅有乙個字母e(或e)

2. 兩邊都必須有資料

3. 左邊可以是整數,也可以是小數

4. 右邊只能是整數

舉例:1e5、1.2e+4、3.0e-2、0e0、1.e0、.0e0

實型變數:

分為單精度和雙精度兩種,單精度用float表示,雙精度用double表示。

舉例:float  x = 1., y = .0, z = 1.2e+4;

double  salary, sum;

字元型常量:

字元型常量的兩種表現形式:

(1) 由一對單引號括起來的單個字元:

舉例:'a'、'#'、'x'、'$'

字元常量包含乙個或多個字元,周圍用單引號圍起來。例如:

'a'   『xy』    『0』

1 #include

2 3 void main()

4編譯:

testnum.c:5:11: warning: multi-character character constant   //多字元的字元常量

testnum.c: in function 『main』:

testnum.c:5: warning: overflow in implicit constant conversion

(2) 由一對單引號括起來的,裡面是由反斜槓「/」引起的若干字元:

1. 一般轉義字元,如:'/t'、'/"'、'//'、'/t'、'/n''、'/''

2. 「/」與其後的1~3位 八進位制數組成的八進位制轉義字元,如:'/123'、'/0'、'/61'、'/101'

3. 「/x」與其後的1~2位 十六進製制數組成的十六進製制轉義字元,如:'/x41'、'/x61'、'/x7f'。注意: 不能是大寫的「/x」。

字元型變數:

注:字元變數中存放的實際上是該字元的ascii碼,因為字元型資料都被處理成整型資料。

舉例:(1) char a = 'a'; 與 char a = 65; 是等價的。因為字元'a'在計算機中的形式是整型65。

(2)

#include

<

stdio.h

>

void

main(

void)

2. 舉例與注意事項:

(1) unsigned:為無符號型別,只能表示大於或等於0的數。

signed:為帶符號型別,可以表示正數、負數和0。

(2) 32位機上,int與long的字長相同,均為4位元組。

(3) 以下程式的輸出結果是多少?

1 #include

2 void main()

3

編譯:

testnum.c: in function 『main』:

testnum.c:4: warning: large integer implicitly truncated to unsigned type

結果:hex : 86a0   186a0

dec: 34464   100000

註解:unsigned short佔兩個位元組,編譯器對二進位制表示擷取低16位,相當於對65536求餘(%),得34464 。

(4) 解釋以下字面值常量:

'a':char型字面值                    l'a':wchar_t型字面值

"a":字串字面值                    l"a":寬字串字面值

10:int型字面值                      10l:long型字面值

10u:unsigned型字面值           10ul:unsigned long型字面值

012:八進位制表示的int型字面值    0xc:十六進製制表示的int型字面值

3.14:為double型字面值           3.14f:為float型字面值

3.14l:為long double型字面值  

-10.:為double型字面值            -10e-2:為double型字面值

-10u:unsigned int型字面值      -10:int型字面值

非法常量:3.14ul、1024f

(5) 以下兩條語句有錯的是:

int  month = 9, day = 7;

int  month = 09, day = 07;//以數字0開頭的表示是八進位制,編譯不通過

編譯: error: invalid digit "9" in octal constant

二、識別符號

1. 識別符號的規則和分類

(1) 識別符號的命名規則:

1)只能由字母、數字和下劃線組成

2)第乙個字元不能是數字

3)區分大小寫,如:int與int是兩個不同的識別符號。

4)盡量做到見名知義,如:int age = 10;

(2) 分類:

1)關鍵字。如:int、float、double、auto等。

2)預定義識別符號。包括函式名和預處理命令名。如:printf、scanf、main、sin、include、define等。

3)使用者識別符號。不能使用關鍵字,可以使用預定義識別符號。如:int printf = 0; int weight = 68;等。

注釋 識別符號 資料型別

注釋 單行注釋 多行注釋 識別符號 1.以字母或 或 開頭 2.區分大小寫 資料型別 1.基本型別 數值 整數 byte short int long 浮點 float double 字元 char 布林 true false 2.引用型別 類 介面陣列 資料型別拓展 整數拓展 int i2 010...

Java關鍵字 識別符號及基本資料型別

1 關鍵字 全部是小寫。2 識別符號 給類,介面,方法 變數等起名。命名規則是英文大小寫字母 數字 和 包的命名規則,全部小寫,例如com.zhiying 類或介面命名規則,每個單詞的首字母大寫,例如helloword 方法或者變數,首單詞首字母小寫,後面單詞首字母大寫 常量,全部大寫 3 基本資料...

C語言基本資料型別詳解

一 基本資料型別 1.基本資料型別的分類 c語言中的三種基本資料型別是 整型 實型 字元型。每種型別又可以分為常量和變數。整型常量 1 十進位制的整型常量 由數字0 9組成。如 0 10 365 12等。2 八進位制的整型常量 以0開頭,由數字0 7組成。如 0 010 0365 012 011等。...