《c語言從入門到精通》看書筆記 第9章 函式

2021-07-07 08:27:46 字數 2002 閱讀 2185

1、函式的定義:

函式頭+函式體,一般形式為:

返回值型別 函式名(引數列表)

2、函式的宣告:

返回值型別 函式名(引數列表);

3、返回語句

(1)返回語句的作用:

1)  利用返回語句能立即從所在的函式中退出,即返回到呼叫的程式中去;

2)返回語句能返回值。將函式值賦給呼叫的表示式中,當然有些函式沒用返回值。

(2)函式返回值的說明:

1)函式的返回值都是通過函式中的return語句獲得的,return語句獎被呼叫函式中的乙個確定值返回到呼叫函式中

2)在定義函式時,要明確指出函式返回值的型別。

3)如果函式值的型別和return語句中表示式的值不一致,則以函式返回值的型別為準。數值型資料可以自動進行型別轉換,即函式定義的返回值型別決定最終返回值的型別。

4、函式引數分為:形式引數和實際引數

形式引數:定義函式時,函式名後面括號中的變數名稱,作用是佔位,等待實參的代替

實際引數:在呼叫乙個函式時,真正使用的乙個函式時,函式名後面括號中的引數,即實際引數,也是計算的結果。

5、陣列作為函式引數時:

只傳遞陣列的位址,而不是將整個陣列賦值到函式中。當用陣列名做為實參呼叫函式時,指向該陣列的

第乙個元素的指標就被傳遞到函式中。

(1)陣列元素作為函式引數

(2)陣列名作為函式引數:此時實參與形參都使用陣列名。     

(3)可變長度陣列作為函式引數:可將函式的引數宣告成長度可變的陣列,在此基礎上利用上面的程式經行修改。

6、使用指標作為函式引數

此時,定義的的函式的引數為可變長度的陣列。

7、主函式main的形式引數如下:

main(int argc,char*argv)

argc引數儲存命令列的引數個數,是整形變數。這個引數的值至少是1,因為至少程式名就是第乙個引數。

argv引數是乙個指向字元指標陣列的指標,這個陣列中的每乙個元素都指向命令列實參。所有命令列實參都是字串,任何數字都必須由程式轉變成為適當的格式。

8、函式的呼叫方式:

(1)函式語句的呼叫方式:

display();

(2)函式表示式呼叫:函式出現在乙個表示式中,這時要求函式必須帶回乙個確定的值,而這個值則作為參加表示式運算的一部分。例如:iresult=inum3*addtwonum(3,5);     /*函式在表示式中*/

(3)函式引數呼叫:函式呼叫作為乙個函式的實參,這樣將函式返回值作為實參傳遞到函式中使用。例:iresult=addtwonum(10,addtwonum(3,5));     /*函式在引數中*/

9、遞迴呼叫:即每個函式都可以直接或間接地呼叫自己。所謂間接呼叫,是指在遞迴函式呼叫的下層函式中再呼叫自己。

10、區域性變數:在乙個函式內部的變數是區域性變數。這些變數作用在函式內,不能被其他函式呼叫。

全域性變數:在所有函式的外部宣告的變數,即為全域性變數。全域性變數是可以在程式中的任意位置進行訪問的變數。

11、數學中常用的函式:

(1)abs函式:求整數的絕對值。

int abs(int i);

(2)labs函式:求長整數的絕對值。

long labs(long n);

(3)fabs函式:返回浮點數的絕對值。

double fabs(double x);

(4)sin函式:正弦函式。

double sin(double x);

(5)cos函式:余弦函式。

double cos(double x);

(6)tan函式:正切函式。

double tan(double x);

(7)isalpha函式:檢查字母,如果引數(ch)是字母表中的字母(大寫或小寫),則返回非零。要包含標頭檔案ctype.h(字元分類函式庫)

(8)isdigith函式:檢查數字,如果ch是數字則函式返回非零值,否則返回零。要包含標頭檔案ctype.h

(9)isalnum函式:檢查字母或數字,是則返回非零值,不是則返回零。要包含標頭檔案ctype.h

《c語言從入門到精通》看書筆記 第10章 指標

1 位址與指標 變數的位址稱為該變數的 指標 如果乙個變數專門來存放另乙個變數的位址,它就是指標變數。在c語言中專門用來存放記憶體單元位址的變數型別即指標型別。2 指標變數 1 指標變數的一般形式 型別說明 變數名 其中 表示該變數是乙個指標變數,變數名即為定義的指標變數名,型別說明便是本指標變數所...

《c語言從入門到精通》看書筆記 第14章 檔案

1 檔案的基本操作 1 檔案指標 檔案指標是指向檔案有關資訊的指標,這些資訊包含檔名,狀態,和當前位置,他們儲存在乙個結構體變數中。在使用檔案時需要在記憶體中為其分配空間,用以存放檔案的基本資訊。該檔案是由系統定義的,c語言規定該型別為file型,宣告如下 typedef struct file 在...

《c語言從入門到精通》看書筆記 第13章 預處理

1 巨集定義 巨集定義是預處理命令的一種,它提供了一種可以替換源 中字串的機制。巨集定義指令 define用來定義乙個識別符號和乙個字串,一這個識別符號來代表這個字串,在程式中每次遇到該識別符號時就用所定義的字串替換它。巨集定義的作用相當於給指定的字串起乙個別名。1 不帶引數的巨集定義一般形式如下 ...