1、首先,我們可以在函數(shù)外面定義變量,就是全局變量。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、微信小程序定制開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了法庫(kù)免費(fèi)建站歡迎大家使用!
2、局部變量可以與全局變量同樣命名。
3、但是優(yōu)先級(jí)是局部變量?jī)?yōu)先。
4、但是局部變量的生命周期是整個(gè)結(jié)構(gòu)內(nèi)。
5、全局變量是整個(gè)程序結(jié)束,才釋放。
6、我們也可以為變量加上修飾符。
分析:全局變量作為C語(yǔ)言的一個(gè)知識(shí)點(diǎn),雖然我們都了解它的特點(diǎn),但在實(shí)際教學(xué)過(guò)程中應(yīng)用得并不是很多。由于全局變量的作用域是從定義變量開(kāi)始直到程序結(jié)束,而對(duì)于編寫(xiě)有多個(gè)返回值的C語(yǔ)言函數(shù),我們可以考慮把要返回的多個(gè)值定義成全局變量。當(dāng)函數(shù)被調(diào)用時(shí),全局變量被更改,我們?cè)侔迅暮蟮娜肿兞恐祽?yīng)用于主調(diào)函數(shù)中。函數(shù)被調(diào)用后被更改后的全局變量值即為函數(shù)的數(shù)個(gè)返回值。下面以一個(gè)實(shí)例演示該方法的應(yīng)用。
實(shí)例:編寫(xiě)函數(shù)求3個(gè)數(shù)中的最大值與最小值。
方法:把最大值、最小值分別定義成2個(gè)全局變量max、min,在用戶自定義函數(shù)中把求出來(lái)的最大值與最小值分別賦給全局變量max、min。函數(shù)調(diào)用完畢后全局變量的max、min值即保存了函數(shù)要求返回的值。程序參考代碼如下:
#include
"stdio.h"
#include
"conio.h"
int
max,min;/*定義兩個(gè)全局變量用于保存函數(shù)返回值*/
void
max_min(int
a,int
b,int
c)
/*定義求最大最小值的函數(shù)*/
{max=min=a;
/*初始化最大最小值*/
if(max
if(max
if(minb)min=b;
if(minc)min=c;
}
main()
{int
x,y,z;
printf("
請(qǐng)輸入3個(gè)整數(shù):\n");
scanf("%d,%d,%d",x,y,z);
max_min(x,y,z)
/*調(diào)用求最大值與最小值的函數(shù)*/
printf("三個(gè)數(shù)中的最大值為:%d;最小值為:%d",max,min);/*輸出最大值與最小值*/
getch();
}
只要把定義變量的語(yǔ)句放在函數(shù)的外面。這樣定義的變量就是全局變量。全局變量有默認(rèn)的初始值為0, 全局變量對(duì)在它起作用范圍內(nèi)的每一個(gè)函數(shù)都可以生效。
1、記住一條就夠了:在函數(shù)之外定義的變量就是全局變量。用static修飾的變量可以是全局的,也可以是局部的,所以說(shuō)“用static修飾的變量是全局變量”是錯(cuò)誤的。用static修飾的變量的生命周期與全局變量一樣,但可見(jiàn)性仍分全局和局部。 2、全局變量在整個(gè)c文件中都能使用,而局部變量在其作用域內(nèi)才能使用,舉個(gè)例子: int f = 7;// 這個(gè)是全局變量int myadd(int a, int b){int c = a + b;// c是局部變量,只能在myadd中使用return c;}int main(void){printf("%d\n", c);// 因?yàn)閏是myadd中定義的局部變量,這里會(huì)報(bào)錯(cuò)。printf("%d\n", f);// f是全局變量,這句是正確的。}
文章標(biāo)題:c語(yǔ)言函數(shù)全局變量怎么用 c語(yǔ)言全局變量在函數(shù)中
鏈接URL:http://www.rwnh.cn/article6/ddcpjog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開(kāi)發(fā)、App設(shè)計(jì)、ChatGPT、網(wǎng)站設(shè)計(jì)、網(wǎng)站排名、云服務(wù)器
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)