第二章 資料和C

2021-10-23 07:10:28 字數 2955 閱讀 5789

最初k&r給出關鍵字

c90標準新增的關鍵字

c99標準新增的關鍵字

intsigned

_boll

long

void

_complex

short

_imaginary

unsigned

char

float

double

位,位元組和字——描述計算機資料單元或儲存單元的術語

位(bit)最小的儲存單元,可以儲存0或1,是計算機記憶體的基本構建塊。

位元組(byte)是常用計算機儲存單位。對幾乎所有機器,一位元組均為8位

字(word)是設計計算機時給定的自然儲存單位,計算機的字長越大,資料轉移越快,允許的記憶體訪問越多。例如個人計算機字長從16位,到32,到目前的64位。

(一)int 型別:

#include

intmain()

注:

列印八進位制和十六進製制整數:

/*

2023年5月22日8:19

目的:測試%x %x %#x %#x的用法

測試%o %#o 的用法

*/# include

intmain

(void)/*

在 dev-c++ 5.11 中的輸出結果是:

------------------------

十六進製制輸出

2f2f

0x2f

0x2f

八進位制輸出

57057

十進位制輸出

47------------------------

總結:*/

c語言中輸出不同進製的數要使用不同進製的轉換說明符:

(二) 其他整數型別:

型別關鍵字

用法short int(可簡寫為 short)

占用的儲存空間比可能 int 少,short 是有符號型別

long int(可簡寫 long)

占用儲存空間比可能 int 多,long是有符號型別

long long int(可簡寫 long long)

占用空間可能比long多,該型別至少佔64位,long long 是有符號型別

unsigned int(可簡寫 unsigned)

用於表示非負值的整數,由於沒有符號位,所以可以表示更大的數

c90標準在型別前面新增 unsignedunsigned long int = unsigned long、unsigned short int = unsigned short

c99標準在型別前面新增 unsignedunsigned long long int = unsigned long long(表示無符號數)

在任何有符號數前新增 signed

可強調使用有符號型別的意圖short = short int = signed short = signed short int(表示同一種型別)注:

整數溢位問題

/*

2023年 5月22日 9:13

目的 :測試整數溢位 */

#include

intmain()

/* dev-c++ 5.11 輸出結果

2147483647 -2147483648 -2147483647

-1 0 1

*/

(三)char 型別

本質上來說char 型別是整數型別,插入型別實際儲存的是整數而不是字元。

/*

2023年 5月22日 9:38

目的 :字元初始化 */

#include

intmain()

/* dev-c++ 5.11 輸出結果

a b

*/

非列印字元:

轉義序列

含義\a

c90新增的警報字元(是否能產生聽到或看到的警報,取決於計算機硬體)

\b退格

\f換頁

\n換行

\r回車

\t水平製表符

\v垂直製表符

\ \反斜槓(\)

\ 』單引號

\ "雙引號

\ ?問號

\ 0oo

八進位制值(oo必須是八進位制,每個o代表0----7中的乙個數)與10進製表示字元相同

\ xhh

十六進製制值(hh必須是八進位制,每個o代表0----f中的乙個數)注意

輸出字元

/*

2023年 5月22日 10:8

目的 :字元列印 */

#include

intmain()

/* dev-c++ 5.11 輸出結果

使用者輸入字元

a 字元 a 對應的整數字 97

*/

注:c90標準中,c語言允許 char 前面使用signed 或 unsigned。這是因為有些編譯器把 char 實現為有符號整型。

(四)_bool 型別

(五)float 、double 以及 long double l型別

浮點常量示例:

列印浮點值:

/*

2023年 5月22日 11:47

目的 :列印浮點值 */

#include

intmain()

(六)型別大小:
/*

2023年 5月22日 11:58

目的 :測試型別長度 */

#include

intmain()

C和指標 第二章

1.編譯過程首先是預處理器處理,在這個階段,預處理器再源 上執行一些文字操作。例如,用實際值代替由 define 指令定義的符號 以及讀入由 include 指令包含的檔案內容。然後,源 經過解析,判斷它的語句的意思 隨後,便產生目標 優化器會對目標 進一步進行處理,使它效率更高,但需要額外的時間。...

第二章 C 筆記

1.可以用函式sizeof來確定乙個型別占用記憶體的大小 如 cout 2.整數除法的結果仍為整數,小樹部分會被截去。如,5 2 2 5 2 2 而不是 2.5 模運算 只有當被除數 前面的那個數 是負數時候,餘數才會是負數。如 7 3 1 12 4 0,20 13 7 而不是 7 3.型別轉換並不...

C 第二章學習

在c 中用同一名字定義多個函式,多個同名函式的個數和型別可以完全不同。int abs int n double abs double n 當同樣名字的函式出現在同一作用域內,就是函式過載。一般過載函式執行相同的功能。必須有兩種差別之一 1 乙個或多個引數的型別不同。2 函式的引數個數不同。如果內部變...