一,指標。
1.指向函式的指標。
可以定義乙個指向函式的指標變數,用來存放某一函式的起始位址,這意味著此指標變數指向該函式。例如:
int (*p)(int ,int);
定義p是乙個指向函式的指標變數,它可以指向函式型別為整型且有兩個整型引數的函式。此時,指標變數p的型別用int ( *)(int int )表示。舉個例子:
#include
int main()
int max(int x,int y)
2.動態記憶體分配。
(1),怎樣建立記憶體的動態分配。
對記憶體的動態分配是通過系統提供的庫函式來實現的,主要有malloc,calloc,free,realloc這四個函式。
(2),開闢動態儲存區。
函式原型為:
void *malloc(unsigned int size);
用free函式釋放動態儲存區;
其函式原型為:
void free (void *p);
其作用是釋放指標變數p所指向的動態空間,使這部分空間能重新被其他變數使用。以上四個函式的宣告在stdlib.h標頭檔案中,在用到這些函式時應當用「#include"指令把stdlib.h標頭檔案包含到程式檔案中。
3.結構體。
c語言允許使用者自己建立由不同型別資料組成的組合型的資料結構,它稱為結構體。在其他一些高階語言中稱為「記錄」。
例如:struct student
struct是宣告結構體型別時必須使用的關鍵字,不能省略。
注意:(1),結構體型別與結構體變數是不同的概念。只能對變數賦值,訪問或運算,而不能對乙個型別賦值,訪問或運算。在編譯時,對型別是不分配空間的,只對變數分配空間,
(2),結構體型別中的成員名可以與程式中的變數名·相同,但二者不代表同一物件。例如:程式中可以另定義乙個變數num,它與struct student中的num是不同的。
二級c語言複習3
1棧支援子程式呼叫。棧是一種只能在一端進行進行插入或刪除的線性表,在主程式呼叫子程式時首先儲存主程式狀態,在執行子程式,最後把子程式結果返回到主程式中呼叫子程式的位置。2二叉樹性質 3 在任意一顆二叉樹中,度為 0的葉子結點總是比度為 2的結點多乙個。3軟體測試的目的是為了發現錯誤而執行程式的過程,...
3道簡單C語言複習2
題目 有1 2 3 4個數字,能組成多少個互不相同且無重複數字的三位數?都是多少?include void main printf n printf sum d sum 題目 乙個整數,它加上100後是乙個完全平方數,再加上168又是乙個完全平方數,請問該數是多少?題目 乙個整數,它加上100後是乙...
C語言複習(專公升本複習)
示例 inculdevoid mian 上面是乙個簡單的c語言程式下面就來介紹其中的各個關鍵點 c語言程式是由乙個或者多個函式構成,乙個c語言有若干條c語言語句構成 2.注 乙個c語言程式或是乙個資料夾中只能有乙個主函式 inculdevoid mian 1.inculde 標頭檔案 inculde...