C語言一些關(guān)鍵字的作用-創(chuàng)新互聯(lián)

目錄

成都一家集口碑和實力的網(wǎng)站建設(shè)服務(wù)商,擁有專業(yè)的企業(yè)建站團隊和靠譜的建站技術(shù),十年企業(yè)及個人網(wǎng)站建設(shè)經(jīng)驗 ,為成都數(shù)千家客戶提供網(wǎng)頁設(shè)計制作,網(wǎng)站開發(fā),企業(yè)網(wǎng)站制作建設(shè)等服務(wù),包括成都營銷型網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),同時也為不同行業(yè)的客戶提供成都網(wǎng)站制作、做網(wǎng)站的服務(wù),包括成都電商型網(wǎng)站制作建設(shè),裝修行業(yè)網(wǎng)站制作建設(shè),傳統(tǒng)機械行業(yè)網(wǎng)站建設(shè),傳統(tǒng)農(nóng)業(yè)行業(yè)網(wǎng)站制作建設(shè)。在成都做網(wǎng)站,選網(wǎng)站制作建設(shè)服務(wù)商就選創(chuàng)新互聯(lián)。

1. static 關(guān)鍵字的作用?

2. const 關(guān)鍵字的作用?

3. volatile 關(guān)鍵字的作用??

4. extern 關(guān)鍵字的作用??

5. sizeof 關(guān)鍵字的作用??


1. static 關(guān)鍵字的作用?

static 最主要功能是隱藏,其次因為 static 變量存放在靜態(tài)存儲區(qū),具備持久性和默認(rèn)值為 0
①隱藏作用,可以在不同的文件中定義同名變量和同名函數(shù)。
②對于變量來說,保持變量持久,靜態(tài)數(shù)據(jù)區(qū)的變量會在程序剛剛運行時就完成初始化,也是唯一一次初始化;儲存在靜態(tài)數(shù)據(jù)區(qū),靜態(tài)存儲區(qū)只有兩種變量(全局變量和 static 靜態(tài)變量)。
③默認(rèn)初始化為 0x00,和全局變量一樣的屬性,減少程序員的工作量。?

2. const 關(guān)鍵字的作用?

①對變量加以限定不能被修改,常量必須在定義的時候同時被初始化。
②const 和指針一起使用,
const int *p1;
int const *p2;
int *const p3;
在三種情況中,第三種指針是只讀的,p3 本身的值不能被修改;
第一二種情況,指針?biāo)赶虻臄?shù)據(jù)是只讀的,p1,p2 的值可以修改,但指向的數(shù)據(jù)不能被修改。
③const 和函數(shù)形參一起使用
使用 const 單獨定義變量可以用#define 命令替換,const 通常放在函數(shù)形參中。如果形參是一個指針,為了防止在函數(shù)內(nèi)部修改指針指向的數(shù)據(jù)就可以用 const來限制。?

3. volatile 關(guān)鍵字的作用??

因為訪問寄存器要比訪問內(nèi)存單元要快的多,編輯器會作減少存取的優(yōu)化。當(dāng)使用 volatile 聲明函數(shù)變量的時候,系統(tǒng)總是重新從它所在的內(nèi)存讀取數(shù)據(jù)。遇到這個關(guān)鍵字聲明的變量,編譯器對訪問該變量的代碼不再進行優(yōu)化,從而提供對特殊地址的穩(wěn)定訪問; 如果不使用 valatile,編譯器將對所聲明的語句進行優(yōu)化,以免出錯。?

4. extern 關(guān)鍵字的作用??

①函數(shù)內(nèi)的局部變量,函數(shù)外定義的變量為全局變量,為靜態(tài)存儲方式,生存周期為整個程序,有效范圍為定義變量的位置開始到本源文件結(jié)束。如果在定義前想要引用該全局變量,則應(yīng)該加上 extern 作為 “外部變量聲明”。多個源文件的工程想要引用一個源文件的外部變量也只許引用變量的文件中加入 extern 關(guān)鍵字加以聲明,但是可以在引用的模塊內(nèi)修改其變量的值,慎用。
②extern “C”: C++代碼調(diào)用 C 語言代碼。在 C++的頭文件中使用。?

5. sizeof 關(guān)鍵字的作用??

sizeof 在 編譯階段處理,作用為取得一個對象(數(shù)據(jù)類型或數(shù)據(jù)對象)的長度(即占用內(nèi)存的大小,以 1 字節(jié)為單位)。
①指針可以看做變量的一種,32 位操作系統(tǒng) sizeof 指針都為 4,例子:
int *p;
sizeof(p) =4;
sizeof(*p) = sizeof(int )=4;
②對于靜態(tài)數(shù)組,sizeof 可以直接計算數(shù)組大小,例:
int a[10];
char b[ ]= “hello”;
? sizeof (a) = 4 * 10 =40;
sizeof (b) = 6; (求字符串長度時要加上字符串結(jié)束符/0)
③數(shù)組作為函數(shù)形參時候,數(shù)組名當(dāng)做指針 使用,例:
void fun (char p[ ])
{
? sizeof (p) ; //結(jié)果為 4
}
④ sizeof 與 stelrn 的區(qū)別:
*sizeof 是操作符, strlen 為函數(shù);
*sizeof 可以使用類型作為參數(shù),如 int char;
strlen 只能使用 char*做參數(shù)且以'\0' 為結(jié)尾
*sizeof 為數(shù)組時候,不退化, 傳遞給 strlen 時數(shù)組會被退化橙指針;?

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

當(dāng)前題目:C語言一些關(guān)鍵字的作用-創(chuàng)新互聯(lián)
分享路徑:http://bm7419.com/article20/dpogco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、虛擬主機企業(yè)網(wǎng)站制作、網(wǎng)站維護小程序開發(fā)、網(wǎng)站設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化