C語言快速入門

2021-10-11 04:32:05 字數 3357 閱讀 2783

快速入門c語言 (筆記後續會跟進)

c語言基礎知識點:

資料型別—浮點型別

資料型別—void型別

資料型別—變數

宣告變數而不定義變數 extern 例如:extern int i;

在函式外宣告,但定義與初始化在函式內

在乙個原始檔中引用另乙個原始檔的變數,只需要在被引用的原始檔中將變數加上extern關鍵字的宣告

左值與右值:

左值(lvalue):指向記憶體位置的表示式,可以出現在複製號的左側也可以出現在賦值

號的右側

右值(rvalue):術語右值指的是儲存在記憶體中某些位址的數值,不能對右值進行賦值

例如:int g=20; 注:g為變數,是左值,可以對其進行賦值,但20是數值型,不可對其進行賦值

資料型別—常量:

定義:常量是固定值,在程式執行期間不會改變。這些固定的值,又叫做字面量。

常量可以是任何的基本資料型別,比如整數常量、浮點常量、字元常量,或字串字面值,也有列舉常量。

常量就像是常規的變數,只不過常量的值在定義後不能進行修改

(1) 整數常量:整數常量可以是十進位制、八進位制或十六進製制的常量。字首指定基數:0x 或 0x 表示十六進製制,0 表示八進位制,不帶字首則預設表示十進位制 整數常量也可以帶乙個字尾,字尾是 u 和 l 的組合,u 表示無符號整數(unsigned),l 表示長整數(long)。字尾可以是大寫,也可以是小寫,u 和 l 的順序任意

例項:(2) 字元常量:字元常量可以是乙個普通的字元(例如 『x』)、乙個轉義序列(例如 『\t』)

或乙個通用的字元(例如 『\u02c0』)。

在 c 中,有一些特定的字元,當它們前面有反斜槓時,它們就具有特殊的含義,被用來表示如換行符(\n)或製表符(\t)等

轉義序列碼:

(3)可以分別用#define、const 來定義常量,注意:將常量最好定義為大寫字母形式,便於識別

儲存類:

定義:儲存類定義c程式中變數/函式的範圍(可見性)和生命週期,這些說明符放在它們所修飾的型別之前,c程式中可用的儲存類有:auto、register、static、exterm

auto 儲存類是所有區域性變數預設的儲存類,也可以說auto只能出現在函式內

register 儲存類用於定義儲存在暫存器中而不是 ram 中的區域性變數。這意味著變數的最大尺寸等於暫存器的大小(通常是乙個詞),且不能對它應用一元的 『&』 運算子(因為它沒有記憶體位置)。暫存器只用於需要快速訪問的變數,比如計數器。還應注意的是,定義 『register』 並不意味著變數將被儲存在暫存器中,它意味著變數可能儲存在暫存器中,這取決於硬體和實現的限制

static 儲存類指示編譯器在程式的生命週期內保持區域性變數的存在,而不需要在每次它進入和離開作用域時進行建立和銷毀。因此,使用 static 修飾區域性變數可以在函式呼叫之間保持區域性變數的值。

static 修飾符也可以應用於全域性變數。當 static 修飾全域性變數時,會使變數的作用域限制在宣告它的檔案內。

全域性宣告的乙個 static 變數或方法可以被任何函式或方法呼叫,只要這些方法出現在跟 static 變數或方法同乙個檔案中

注:函式中的static宣告的變數不會因為每次函式的呼叫而被重置

extern 儲存類用於提供乙個全域性變數的引用,全域性變數對所有的程式檔案都是可見的。當您使用 extern 時,對於無法初始化的變數,會把變數名指向乙個之前定義過的儲存位置。

當您有多個檔案且定義了乙個可以在其他檔案中使用的全域性變數或函式時,可以在其他檔案中使用 extern 來得到已定義的變數或函式的引用。可以這麼理解,extern 是用來在另乙個檔案中宣告乙個全域性變數或函式。

extern 修飾符通常用於當有兩個或多個檔案共享相同的全域性變數或函式的時候

運算子:

注意:關係運算子和邏輯運算子,關係是指大小關係,邏輯運算子是指結果真假

算數運算子、

關係運算子、

邏輯運算子、

位運算子、

按二進位制進行逐位運算,最後得出結果

賦值運算子、

雜項運算子

注意:c?a:b 解釋:如果c為真,則值為a,c為假,則值為b

運算子的優先順序:

判斷:判斷結構要求程式設計師指定乙個或多個要評估或測試的條件,以及條件為真時要執行的語句(必需的)和條件為假時要執行的語句(可選的)

迴圈:陣列:初始化陣列:

訪問陣列元素: 陣列名+索引 例如:doouble salary=balance[1];

列舉:可以使資料更為簡潔

定義格式: enum 列舉名 ;

注:未賦值的列舉元素的值為前乙個列舉元素的值+1

列舉變數的定義:

列舉型別的轉換:weekend = ( enum day ) a;

指標:每乙個變數都有乙個記憶體位置,每乙個記憶體位置都定義了可使用 & 運算子訪問的位址,它表示了在記憶體中的乙個位址

指標的型別應當與所對應的資料的資料型別相同

使用指標的操作:

a. 定義乙個指標變數

b. 把變數位址複製給指標

c. 訪問指標變數中可用位址的值

指標使用例項:

執行結果:

僅用指標變數名p,指的是變數的儲存位址

當用*p所代表的是位址內所儲存的值

指標的算數運算:

指標的每一次遞增,會指向下乙個元素的儲存單元

指標的每一次遞減,會指向上乙個元素的儲存單元

指標在遞增和遞減時跳躍的位元組數取決於指標所指變數資料型別長度,比如int就

是四個位元組

指標陣列:可以建立乙個指標陣列

指向指標的指標:該指標指向了另乙個指標的位址,另乙個指標指向的是變數的位址

宣告時: int **var;

c語言函式:

一、函式知識點

函式組成結構:

在 c 語言中,函式由乙個函式頭和乙個函式主體組成。下面列出乙個函式的所有組成部分:

返回型別:乙個函式可以返回乙個值。return_type 是函式返回的值的資料型別。有些函式執行所需的操作而不返回值,在這種情況下,return_type 是關鍵字 void。

函式名稱:這是函式的實際名稱。函式名和引數列表一起構成了函式簽名。

引數:引數就像是佔位符。當函式被呼叫時,您向引數傳遞乙個值,這個值被稱為實際

引數。引數列表包括函式引數的型別、順序、數量。引數是可選的,也就是說,函式可能不包含引數。

函式主體:函式主體包含一組定義函式執行任務的語句

在程式中,區域性變數和全域性變數的名稱可以相同,但是在函式內,如果兩個名字相同,會使用區域性變數值,全域性變數不會被使用

初始化區域性變數和全域性變數

當區域性變數被定義時,系統不會對其初始化,您必須自行對其初始化。定義全域性變數時,系統會自動對其初始化,如下所示:

得到某個型別或某個變數再特定平台上的大小,用sizeof():例如 sizeof(int)

C語言快速入門系列 詳解

c語言快速入門系列 九 c語言系列已經接近尾聲了,在前面八節的學習中,我們學會了c的基本語法,基本資料型別,三種程式結構 順序,判斷,迴圈 陣列,函式,指標,結構體,共用體,位運算,檔案等內容,本節將對前面沒有講的c的遺漏知識點進行補充,當然發現有那些的遺漏的知識點也會進行更新!謝謝大家一直以來的支...

C語言快速入門(1)初識C程式

2.必不可少之主函式 乙個c程式有且僅有乙個主函式,即main函式。c程式就是執行主函式裡的 也可以說主函式就是c語言中的唯一入口。printf 是格式輸出函式。return是函式的返回值,根據函式型別不同,返回值型別是不同的 本例為整型 注意 c程式一定是從主函式開始執行的。3.良好習慣之規範 1...

快速入門程式語言

曾經看到網上有說3天內學習了一門新的程式語言,很多人敬佩不已。3天學習一門語言需要有比較紮實的功底,主要是計算機組成原理。其實這對計算機專業出身的學生來講並不是難事。我就個人體會講講如何快速入門乙個全新的程式語言。學過組成原理的人就知道計算機真的只是一台 計算 機而已,計算機只能處理能夠最終轉化成算...