C語言中關於變數的定義

2021-07-14 17:26:10 字數 1019 閱讀 8099

一,關於變數的定義

1,乙個整型變數

int   a; 

2,乙個指向指標的指標,它指向的指標是指向乙個整型數的(整型指標的指標變數)

int   **a;

3,乙個有10 個整型數的陣列(整型陣列)

int  a[10]; 

4,乙個有10個指標的陣列,該指標是指向乙個整型數的(整型指標陣列)

int *a[10];

5,乙個指向有10個整型陣列的指標(整型陣列指標變數)

int (*a)[10];

6,乙個指向函式的指標。該函式有個整型引數(整型函式指標變數)

int (*a)(int);

7,乙個有10個指標的陣列,該指標指向乙個函式(整型函式陣列指標變數)

int (*a[10])(int);

8,int *(*(*fp1)(int))[10]

fp1:函式指標變數,

該函式指標指向乙個形參為int的函式,返回值為陣列指標,

該陣列指標指向乙個整型指標陣列

9,int *(*(*arr[5])())()

arr:  函式指標陣列

該陣列中的指標指向乙個形參為空的函式,返回值為函式指標

該函式指標指向乙個形參為空的函式

10,float(*(*b())[ ])()

b: 函式,形參為空,返回值是陣列指標

該陣列指標指向乙個形參為空,返回值為float的函式,

11,void *(*c)(char ,int(*)())

c:函式指標變數

該函式指標指向乙個形參為,char型別和整型函式指標,返回值為void型別的函式

二,全域性變數和區域性變數的區別

1,從空間分配:全域性變數分配區間是./data和bss,區域性變數分配為棧空間

2,初始化:       全域性變數的初始化為0,區域性變數初始化為隨機值

3,作用域:      全域性變數作用於整個程式,釋放於程式結束

區域性變數作用於整個函式,釋放於函式呼叫結束

C語言中定義全域性變數

1 在c語言的標頭檔案中定義變數出現的問題 最好不要傻嘻嘻的在標頭檔案裡定義什麼東西。比如全域性變數 xx標頭檔案 ifndef xx 標頭檔案.h define xx 標頭檔案.h int a endif 那麼,很糟糕的是,這裡的int a 是個全域性變數的定義,所以如果這個標頭檔案被多次引用的話...

C語言中的變數

開場白要吸引人.但是我不會 有人說我可以靠臉吃飯。可我偏偏選擇了手,哈哈哈 說笑 娛樂娛樂,下面我就來提提c語言中關於變數的意思 什麼是變數?沒錯 你看字面意思就可以理解,就是可以變得量,用專業一點的話就是程式中其值可以變化的量。變數有三個基本要素 變數名 每乙個變數都應該有乙個名字。變數的資料型別...

C語言中的變數

一.普通區域性變數 區域性變數無論是否靜態均不允許同名,否則會出現error 當區域性變數與全域性變數同名時,依據就近原則進行判斷。區域性變數同名是指在復合語句的巢狀中,內層復合語句變數與外層復合語句變數同名,這樣是允許的。二.普通全域性變數 全域性變數無論是否靜態都不允許同名,否則編譯器會給出er...