成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

C語(yǔ)言static關(guān)鍵字

LoftySoul / 2411人閱讀

摘要:目錄關(guān)鍵字修飾局部變量修飾全局變量修飾函數(shù)關(guān)鍵字修飾局部變量使得局部變量出了自己的范圍也不銷毀,其實(shí)是改變了其生命周期但是作用域還是局部的。

static關(guān)鍵字

  1. static修飾局部變量

使得局部變量出了自己的范圍也不銷毀,其實(shí)是改變了其生命周期 但是作用域還是局部的。

  1. static修飾全局變量
  2. static修飾函數(shù)

修飾局部變量

不使用static修飾局部變量:

void test() {	int a = 1;	a++;	printf("%d/n", a);}int main() {	int i = 0;	while (i < 10) {		test();		i++;	}	return 0;}

使用static修飾局部變量:

void test() {	static int a = 1;	a++;	printf("%d/n", a);}int main() {	int i = 0;	while (i < 10) {		test();		i++;	}	return 0;}


總結(jié):

  1. 使得局部變量出了自己的范圍也不銷毀,其實(shí)是改變了其生命周期
  2. 但是作用域還是局部的。

修飾全局變量

未使用static修飾全局變量:
test.c文件:

extern int g_val;//聲明外部變量,在add.c中定義變量,int main() {	printf("%d/n", g_val);	return 0;}

add.c文件:

int g_val = 200;

使用static修飾全局變量:
test.c文件:

extern int g_val;//聲明外部變量,在add.c中定義變量,int main() {	printf("%d/n", g_val);	return 0;}

add.c文件:

static int g_val = 200;

運(yùn)行出錯(cuò):

總結(jié):

  1. 全局變量,本身具有外部鏈接屬性
  2. 如果全局變量在源文件是靜態(tài)的static,會(huì)使得全局變量失去外部鏈接屬性
  3. 變成內(nèi)部鏈接屬性,只能在本來(lái)的.c文件使用

修飾函數(shù)

未使用static關(guān)鍵字:
//聲明外部符號(hào)
test.c文件:

extern Add(int x,int y);int main() {	int a = 10;	int b = 20;	int ret = Add(a, b);	printf("%d/n", ret);	return 0;}

add.c文件:

int Add(int x, int y) {//int表示函數(shù)調(diào)用返回int變量	int z = x + y;	return z;}

使用static關(guān)鍵字:
//聲明外部符號(hào)
test.c文件:

extern Add(int x,int y);int main() {	int a = 10;	int b = 20;	int ret = Add(a, b);	printf("%d/n", ret);	return 0;}

add.c文件:

static int Add(int x, int y) {//不能被外部.cpp文件調(diào)用	int z = x + y;	return z;}

運(yùn)行出錯(cuò):

總結(jié):

  1. 函數(shù)默認(rèn)具有外部鏈接屬性,但是被static修飾后,
  2. 會(huì)使得函數(shù)失去外部連接屬性,變成內(nèi)部鏈接屬性
  3. static修飾的函數(shù)只能在自己所在的.c文件使用
  4. 不能在其他.c文件使用

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/122559.html

相關(guān)文章

  • 【?重走長(zhǎng)征路のC語(yǔ)言中static關(guān)鍵字?】

    C語(yǔ)言中static關(guān)鍵字 用static聲明限定外部變量與函數(shù),可以將其后聲明的對(duì)象的作用域限定為被編譯源文件的剩余部分。要降對(duì)象指定為靜態(tài)存儲(chǔ),可以在正常的聲明之前加上關(guān)鍵字static作為前綴。 一個(gè)聲明中最多只能有一個(gè)存儲(chǔ)類說(shuō)明符。如果沒(méi)有指定存儲(chǔ)類說(shuō)明符,則將按照下列規(guī)則進(jìn)行: 在函數(shù)內(nèi)部聲明的對(duì)象被認(rèn)為是auto類型; 在函數(shù)內(nèi)部聲明的函數(shù)被認(rèn)為是extern類型; 在函數(shù)外部聲明的對(duì)...

    stormzhang 評(píng)論0 收藏0
  • 一、初識(shí)c語(yǔ)言

    摘要:局部變量的作用域是變量所在的局部范圍。局部變量的生命周期是進(jìn)入作用域生命周期開(kāi)始,出作用域生命周期結(jié)束。 目錄 1、什么是c語(yǔ)言? 2、數(shù)據(jù)類型 3、變量、常量 3.1 定義變量的方法 3.2 變量的分類 3.3 變量的作用域和生命周期 3.4定義常量的方法 4、關(guān)鍵字 1、什么是c語(yǔ)言?...

    MingjunYang 評(píng)論0 收藏0
  • C語(yǔ)言深刨_關(guān)鍵字2——static sizeof

    摘要:文章目錄多文件問(wèn)題修飾全局變量和函數(shù)修飾局部變量局部變量就是臨時(shí)的,全局變量就是全局的多文件問(wèn)題全局變量和函數(shù)在另一個(gè)文件定義的函數(shù)能在其他文件中使用嗎可以的在另一個(gè)文件定義的全局變量能在其他文件使用嗎可以的從上面來(lái)看 ...

    Worktile 評(píng)論0 收藏0
  • 【簡(jiǎn)單地過(guò)一遍C語(yǔ)言基礎(chǔ)部分】所有知識(shí)點(diǎn),點(diǎn)到為止?。▋H一萬(wàn)多字)

    摘要:局部變量的作用域是變量所在的局部范圍。生命周期變量的生命周期變量的創(chuàng)建和銷毀之間的時(shí)間段局部變量的生命周期進(jìn)入作用域生命周期開(kāi)始,出作用域生命周期結(jié)束。 前言: 就在前幾天,C語(yǔ)言入門到進(jìn)階部分的專欄——《維生素C語(yǔ)言》終于完成了。全文共計(jì)十八個(gè)章節(jié)并附帶三張筆試練習(xí)篇,美中不足的是,第...

    chaos_G 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

LoftySoul

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<