《C程序設(shè)計》復(fù)習(xí)資料知識點總結(jié)_第1頁
《C程序設(shè)計》復(fù)習(xí)資料知識點總結(jié)_第2頁
《C程序設(shè)計》復(fù)習(xí)資料知識點總結(jié)_第3頁
《C程序設(shè)計》復(fù)習(xí)資料知識點總結(jié)_第4頁
《C程序設(shè)計》復(fù)習(xí)資料知識點總結(jié)_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

《C程序設(shè)計》復(fù)習(xí)資料知識點總結(jié)

第1章C語言概述

1.1.c語言屬高級語言,區(qū)分字母的大小寫,以函數(shù)為基本單位采用模塊化

程序設(shè)計,可直接訪問內(nèi)存,進而對硬件進行操作。

1.2.用C語言編寫和程序稱作C源程序,簡稱C程序,C程序可由若干個

文本文件組成,文件擴展名為C(使用C++編譯器時默認擴展名為CPP)o

C源程序經(jīng)編譯、連接后得到擴展名為EXE的可執(zhí)行文件(目標(biāo)程序)。

預(yù)處理編譯、連接執(zhí)行

若干個C程序文件--->C程序…一一目標(biāo)程序文件

1.3.C程序從主函數(shù)開始執(zhí)行,每個C程序有且僅有一個主函數(shù),因此,每

個C程序文件中至多有一個主函數(shù)。

1.4.C語句以分號結(jié)尾,用{}括起來的一組語句稱作復(fù)合語句,復(fù)合語句可

省略花括號之后的分號。

1.5.允許一行內(nèi)寫多個C語句,也允許一個C語句占用多行,但保留字和標(biāo)

識符不可拆行。

1.6.在C集成環(huán)境VC++6.0中,新建工程、保存當(dāng)前程序文件、編譯當(dāng)前

程序、執(zhí)行當(dāng)前程序的快捷鍵依次為:Ctrl+N、Ctrl+S、F7、Ctrl+F5o

第2章程序設(shè)計的靈魂一一算法

2.1.解決問題的方法和步驟稱作算法。算法和數(shù)據(jù)結(jié)構(gòu)是程序的兩個主要要

素。

2.2.算法具有確定性、有窮性、有效性等特點。

2.3.算法可用自然語言、流程圖、N-S圖、計算機語言、偽代碼等描述。偽

代碼是用介于自然語言和計算機語言之間的文字和符號來描述算法。

起止框()輸入輸出框//判斷框

處理框_________注釋框……匚連接點O

流程線有向線段或折線

圖2.1ANSI流程圖符號

2.4.算法的基本結(jié)構(gòu)分為:順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。

圖2.2順序結(jié)構(gòu)圖2.3選擇結(jié)構(gòu)圖2.4當(dāng)循環(huán)圖2.5直到循環(huán)

條件

Y、/N

圖2.7選擇結(jié)構(gòu)

2.5.由三種基本結(jié)構(gòu)組成的程序稱作結(jié)構(gòu)化程序,結(jié)構(gòu)化程序中的每個模塊

只有一個入口和一個出口。結(jié)構(gòu)化程序設(shè)計通常采用“自頂向下、逐步

細化”的設(shè)計方法。

第3章數(shù)據(jù)類型、運算符與表達式

3.1.C的數(shù)據(jù)類型如下所示:

表3.1C語言的數(shù)據(jù)類型

數(shù)據(jù)類型字節(jié)數(shù)數(shù)值范圍

無符號短整型(unsignedshortint)40-216-1

整有符號短整型3ghoijint)2-215?2凡1

型無符號長整型(unsignedkmcint)40~232-1

有符號長整型(signedloneint)4■2兔?/2犯.1

實單精度實型(float)4長37位,6位有效

型雙精度實型(double)8長307位,15位有效

長雙精度實型(longdouble)10長4931位,18位有效

字符型(char)10-28-1

空類型(void)1

構(gòu)枚舉類型2

造指針類型2

類數(shù)組類型

型結(jié)構(gòu)體類型

共用體類型

3.2.C符號常量名、變量名、函數(shù)名等統(tǒng)稱標(biāo)識符,標(biāo)識符的命名規(guī)則為:以

字母或下劃線開頭,由字母、數(shù)字、下劃線組成,超出32個字符部分被

忽略(最好不超過8個字符)。

3.3.以0開頭的整數(shù)為八進制整數(shù),以0X或Ox開頭的整數(shù)為十六進制無符

號整數(shù)。

3.4.-32768?32767為int型,0U?65535U為unsigned型,65536U-

4294967295U和0UL?4294967295UL為unsignedlong型,-2147483648?

-32769、32768?2147483647和-2147483648L?2147483647L為long型。

后綴U和L不區(qū)分大小寫和次序。

3.5.數(shù)據(jù)的存儲字節(jié)數(shù)可用運算符sizeof()查詢,括號內(nèi)可是數(shù)據(jù)、表達式或

類型名。

3.6.有符號整數(shù)(int和long)按補碼存儲,因此,-65535U?-1U與1U?65535U

依次相等,-4294967295UL?-1UL與1UL-4294967295UL依次相等。

3.7.定點數(shù)(含小數(shù)點數(shù))和浮點數(shù)統(tǒng)稱C實型常量,浮點數(shù)的一般形式為:

尾數(shù)e除碼或尾數(shù)E除碼

其含義為:

尾數(shù)xlO除碼

其中,尾數(shù)為定點數(shù)或整數(shù),除碼為整數(shù)。標(biāo)準(zhǔn)浮點數(shù)的小數(shù)點在第1位

非0數(shù)字之后。后綴L或1的實型常量為長雙精度,無后綴實型常量為雙

精度。

3.8.用一對單引號括起來的單個字符稱作C字符常量,其值為該字符的ASCII

碼(1字節(jié)無符號整數(shù))。

3.9.轉(zhuǎn)義字符,,、憎、3、分別表示回車符、制表符、反斜杠、單

引號、雙引號。

3.10.轉(zhuǎn)義字符、整數(shù),、”整數(shù),(或AX整數(shù),)中的整數(shù)分別為八進制、十六

進制,表示以此整數(shù)為ASCII碼的字符。

3.11.用雙引號括起來的一串字符稱作C字符串型常量,串中字符數(shù)稱作串長,

可以為0。字符串的存儲形式為:依次存儲字符串中字符的ASCII碼,并

追加一個空字符、0,(1字節(jié)無符號整數(shù)0)。

3.12.字符型、整型、實型數(shù)據(jù)統(tǒng)稱數(shù)值型數(shù)據(jù),不同類型的數(shù)值型數(shù)據(jù)可以混

合運算,低精度數(shù)據(jù)被自動強制轉(zhuǎn)換為高精度數(shù)據(jù)后方參與運算。另外,

字符常量為有符號短整數(shù),兩個字符型數(shù)據(jù)間的運算按有符號短整數(shù)處

理。

3.13.如果將數(shù)值型數(shù)據(jù)賦給不同類型的數(shù)值型變量,則數(shù)值型數(shù)據(jù)將被自動強

制轉(zhuǎn)換為變量的數(shù)據(jù)類型。

3.14.C允許定義變量的同時賦初值。

3.15.C運算符及其優(yōu)先級、結(jié)合性如附錄C(教材第365頁)所示。

3.16.強制數(shù)據(jù)類型轉(zhuǎn)換的一般形式為:

(類型名)數(shù)據(jù)

3.17.自增++、自減■運算只能作用于變量,作用于右側(cè)時,返回變量自增、自

減前的值。

3.18.賦值表達式的格式為:

變量=表達式或變量op=表達式

其中,op為運算符+、-、*、/、%、>>、?>&、人、|中某一個。前者

將右邊表達式的值賦給左邊的變量,后者將左邊變量的當(dāng)前值與右邊表達

式的值作相應(yīng)運算后仍賦給左邊的變量。整個賦值表達式取左邊變量所賦

的新值。

3.19.用逗號分隔的一組表達式稱作逗號表達式,其一般形式為:

表達式,表達式,…,表達式

其功能為:從左至右依次計算各表達式的值,并以最后一個表達式的值為

整個逗號表達式的值。

3.20.將數(shù)學(xué)式改為C表達式時應(yīng)注意:

rX

l1

\J乘號*不可省略;

z\

l2J

\Z正確改寫腳碼、運算符、括號等;

zX

<3I

\Z正確書寫函數(shù)名;

z

<4

\把握好運算優(yōu)先級,分?jǐn)?shù)線改為/時,分子、分母相應(yīng)加括號;

5X

J正確拆分不等式組;

6x

z—區(qū)分整數(shù)除法和實數(shù)除法。

第4章順序結(jié)構(gòu)程序設(shè)計

4.1.表達式后綴分號稱作表達式語句,即,

表達式;

4.2.putchar、getchar、printf、scanf等輸入輸出函數(shù)的原型在頭文件stdio.h

中。

4.3,函數(shù)putchar和getchar的格式和功能如下:

(1)putchar

格式:putchar(表達式)

功能:向標(biāo)準(zhǔn)輸出設(shè)備輸出以指定表達式的值為ASCII碼的字符,

并以該值為函數(shù)值(自動強制轉(zhuǎn)換為int型)。

(2)getchar

格式:getchar()

功能:從標(biāo)準(zhǔn)輸入設(shè)備輸入一個字符,并以該字符為函數(shù)值。

注意:getchar可提取空格及回車、Tab等部分控制字符,而且只提

取輸入中相應(yīng)位置上的一個字符,因此,輸入字符間無須分隔,否

則也被視為輸入字符。

4.4.printf函數(shù)的格式和功能如下:

格式:printf(格式控制串,輸出表列)

功能:

(1)從右至左依次計算輸出表列中各表達式的值;

(2)從左至右依次輸出格式控制串中的字符,其中,%引導(dǎo)的格式控制符

由輸出表列中相應(yīng)表達式的值所取代。

輸出表列是一組用逗號分隔的表達式(又稱輸出項,可以為0項)。格式

控制串為字符串型數(shù)據(jù)(可以是表達式)。其中,格式符用于控制輸出表

列中相應(yīng)表達式的輸出格式。格式符及其功能如下表所示:

表4.1printf格式字符

格式符說明

d或i有符號十進制短整數(shù)(不輸出正號)

U無符號十進制短整數(shù)

O無符號八進制短整數(shù)(無前綴0)

x或X無符號十六進制短整數(shù)(無前綴0X,數(shù)字的大小寫與x相同)

C字符

S字符串

f定點數(shù)(默認6位小數(shù))。

e或E浮點數(shù)(浮點數(shù)中e的大小寫與格式符e的大小寫相同)

g或G%f和%e中輸出寬度較短者(e與g的大小寫相同)

附加格式符說明

1插在%和d、i、u、o、x、X之間,表示輸出相應(yīng)長整數(shù)。

整數(shù)插在%和其它格式符之間,前一個整數(shù)的絕對值為輸出數(shù)據(jù)的寬度,后一個整數(shù)

控制實際輸出位數(shù):①輸出整數(shù)時,指定輸出位數(shù),不足左補0,超出保留;②

.整數(shù)

輸出實數(shù)時,指定輸出小數(shù)位數(shù),不足右補0,超出四舍五入;③輸出字符串時,

整數(shù).整數(shù)指定輸出字符數(shù)。另外,第一個整數(shù)為負時,輸出數(shù)據(jù)左對齊,否則右對齊。

4.5.scanf函數(shù)的格式和功能如下:

格式:scanf(格式控制串,地址表列)

其中,格式控制串為字符串型數(shù)據(jù)(可以是表達式),地址表列是一組用逗

號分隔的地址。

功能:

(1)右至左依次計算地址表列中各表達式的值;

(2)色標(biāo)準(zhǔn)輸入設(shè)備提取數(shù)據(jù),并從左至右依次存儲到所指定的存儲單

JLio

(3)地址表列中的地址可用表達式表示,通常形式為:

&變量

其中&是地址運算符,它表示取其后變量的存儲(起始)地址。

說明:

(1)scanf函數(shù)格式符與printf函數(shù)的格式符的功能相似。scanf的合法格

式符不區(qū)分大小寫、實型格式符均等效,另外,

表4.2scanf的附加格式符說明

附加格式符說明

正整數(shù)指定輸入數(shù)據(jù)的最大寬度(插在%與其它格式符之間)

*跳過當(dāng)前一個數(shù)據(jù)(插在%與其它格式符之間)

*正整數(shù)跳過當(dāng)前指定個字符(插在%與其它格式符之間)

(2)如果格式控制串中有非格式符,則輸入數(shù)據(jù)中對應(yīng)位置上必須是該字

符,且被跳過,這為指定數(shù)據(jù)間分隔符提供了方便。

(3)printf和scanf格式控制串中的每對%%(從左至右結(jié)合)按一個普通字

符%對待。

第5章選擇結(jié)構(gòu)程序設(shè)計

5.1.C邏輯值為短整數(shù)(int),真、假分別為1、Oo另外,字符、數(shù)、指針作為

邏輯量時,非0、非空為真(即1),0、空為假(即0)。邏輯運算如下表所示:

表5.1邏輯運算真值表

左元右元!右元左元&&右元左元II右元

假(0)假(0)真⑴假(0)假(0)

假(0)真(非0)假(0)假(0)真⑴

真俳0)假(0)真⑴假(0)真⑴

真(非0)真(非0)假(0)真⑴真⑴

5.2.對于形如

的邏輯式,從左至右計算口的邏輯值,遇到真則提前終止。

5.3.對于形如

的邏輯式,從左至右計算口的邏輯值,遇到假則提前終止。

5.4.算術(shù)、關(guān)系、邏輯運算的優(yōu)先級參見附錄C(教材第365頁)。

5.5.if語句的格式和功能如下:

(1)格式一:if(條件)語句

功能:如果條件成立,方執(zhí)行語句。

(2)格式二:if(條件)語句1else語句2

功能如果條件成立,執(zhí)行語句1,否則執(zhí)行語句2O

注意:else不可獨立使用,它與其前最近一個尚未配對的if配對,為

避免歧義,通常只在else中嵌套if語句。

5.6.條件表達式的格式和功能如下:

格式:條件?表達式1:表達式2

功能:如果條件成立,取表達式1的值,否則取表達式2的值。

說明:條件表達式可以嵌套,與其前最近一個尚未配對的if配對。

5.7.switch語句的格式和功能如下:

格式:

switch(表達式)

case常量i:語句組i

default:語句組n+1

)

功能:如果表達式的值等于常量i,則從語句組i開始執(zhí)行,否則執(zhí)行語

句組n+lo

說明:

(1)“表達式”的值和“常量”為整型(包括字符型)。

(2)switch中的每個語句組稱作一個分支,為使各分支獨立,通常以

break、returnexit等語句結(jié)尾。另外,"default:語句組n+1”可

以缺省。

5.8.break語句的格式和功能如下:

格式:break;

功能:結(jié)束本層switch語句或本層循環(huán)語句。

說明:break語句只能用于switch語句和循環(huán)。

第6章循環(huán)結(jié)構(gòu)程序設(shè)計

6.1.while語句的格式和功能如下:

格式:while(表達式)循環(huán)體

功能:當(dāng)表達式的值為真時,重復(fù)執(zhí)行其后循環(huán)體。

說明:循環(huán)體是循環(huán)語句的內(nèi)嵌語句,可以是空或復(fù)合語句(下同)。

6.2.do-while語句的格式和功能如下:

格式:do循環(huán)體while(表達式)

功能:重復(fù)執(zhí)行循環(huán)體,直到表達式的值為假。

說明:do-while循環(huán)至少執(zhí)行一次循環(huán)體。

6.3.for語句的格式和功能如下:

格式:for(表達式1;表達式2;表達式3)循環(huán)體

功能:

(1)計算表達式1;

(2)當(dāng)表達式2的值為真時,重復(fù)執(zhí)行循環(huán)體和計算表達式3。

說明:表達式1、表達式2、表達式3均可缺省,但保留分號。

6.4.continue語句的格式和功能如下:

格式:continue;

功能:跳過循環(huán)體中其后程序段(結(jié)束本次循環(huán))。

說明:continue語句只能用于循環(huán)。

6.5.掌握以下算法:累加、階乘、判斷素數(shù)、分解整數(shù)數(shù)字、遞推數(shù)列、打印

字符圖形。

第7章數(shù)組

7.1.同一類型數(shù)據(jù)的序列稱作數(shù)組,數(shù)組中數(shù)據(jù)用相應(yīng)下標(biāo)變量訪問,因此,

數(shù)組亦可視為由下標(biāo)變量組成的序列。

7.2.定義數(shù)組語句的一般格式和功能為:

格式:數(shù)據(jù)類型名數(shù)組名[第1維長度]…[第n維長度]

功能:為數(shù)組分配連續(xù)內(nèi)存單元,用于存儲數(shù)組中的下標(biāo)變量(低維優(yōu)先),

并將起始地址(又稱基址)賦給數(shù)組名。

說明:數(shù)組長度只能為整型常量或整型常量表達式。

7.3.數(shù)組的要素有:數(shù)據(jù)類型、數(shù)組名、維數(shù)及各維的長度。各維的長度必須

是常量,可用常量表達式表示,其值的整數(shù)位有效一一截斷取整。

7.4.下標(biāo)變量的格式為:

數(shù)組名[第1維下標(biāo)]…[第n維下標(biāo)]

7.5.下標(biāo)從0開始,可用表達式表示,其值的整數(shù)位有效。下標(biāo)最大值比長度

小lo

7.6.下標(biāo)變量的使用與普通變量相同。

7.7.定義數(shù)組的同時可對數(shù)組中的下標(biāo)變量賦初值。

格式:數(shù)據(jù)類型名數(shù)組名[第1維長度]…[第n維長度]={數(shù)據(jù)表}

功能:定義數(shù)組的同時將數(shù)據(jù)表中數(shù)據(jù)依次賦給數(shù)組中下標(biāo)變量,未賦值

下標(biāo)變量的初值為相應(yīng)數(shù)據(jù)類型的Oo

說明:數(shù)據(jù)表中的數(shù)據(jù)必須是常量,可用表達式表示。第1維長度可省略,

如果省略,其長度由數(shù)據(jù)表和其它維長度確定一一存儲所需的最小長度。

7.8.以字符為數(shù)據(jù)元素的數(shù)組稱作字符數(shù)組,它由一組字符型下標(biāo)變量組成。

除賦值外,字符數(shù)組名的使用與字符串變量相似。字符數(shù)組也可用字符串

初始化。

7.9.標(biāo)準(zhǔn)函數(shù)庫提供許多用于處理字符串的函數(shù)。

表7.1常用字符串處理函數(shù)

格式功能頭文件

puts(串)依次輸出串中字符,遇到終止,然后換行。

stdio.h

gets(串)讀入一行字符,依次存入所分配的內(nèi)存空間,并追加入(V。

strcat(串1,串2)將串2復(fù)制、連接到串1的第一個rr處。

string.h

strcpy(串1,串2)將串2復(fù)制到串1=

strcmp(串1,串2)比較串1和串2的大小。

strlen(串)求字符串的長度。

strlwr(串)將串中大寫字母均轉(zhuǎn)換為相應(yīng)小寫字母。

stnipr(串)將串中小寫字母均轉(zhuǎn)換為相應(yīng)大寫字母。

注意:輸出字符串及處理字符串的函數(shù),均忽略字符串中第一個'(F及其后的字符。

7.10.掌握冒泡排序。

第8章函數(shù)

8.1.自定義函數(shù)的格式為:

函數(shù)值類型函數(shù)名(帶類型聲明的形參表列){函數(shù)體}

8.2.函數(shù)值的默認數(shù)據(jù)類型為int。

8.3.如果函數(shù)有返回值,則用return語句返回,其格式為:

return表達式;或return(表達式);

8.4.如果函數(shù)無返回值,即函數(shù)值類型為void,亦可用格式:

return;

結(jié)束本函數(shù)并返回調(diào)用者。

8.5.函數(shù)一般調(diào)用格式為:

函數(shù)名(實參表列)

其中,實參表列為一組逗號分隔的表達式。實參按從右至左的次序計算并

傳遞給相應(yīng)形參。

8.6.如果函數(shù)調(diào)用在其定義之前,調(diào)用前應(yīng)作相應(yīng)聲明,聲明格式為:

函數(shù)值類型名函數(shù)名(形參及其類型聲明表列);

其中,形參可省略。

8.7.函數(shù)不可嵌套定義,但允許嵌套調(diào)用,亦可直接或間接調(diào)用自身(稱作遞

歸函數(shù))。

8.8.遞歸函數(shù)的函數(shù)體的一般格式為:(B班同學(xué)不作要求)

if(遞歸條件)語句1/*遞歸時,如何遞歸*/

else語句2/*非遞歸時,如何處理*/

if(!遞歸條件)語句1/*非遞歸時,如何處理*/

else語句2/*遞歸時,如何遞歸*/

8.9.形參及函數(shù)內(nèi)定義的變量稱作局部變量,它從定義處生效,且只在該函數(shù)

內(nèi)有效。因此,不同函數(shù)中的局部變量可以同名,但同名不同義。

8.10.在所有函數(shù)之外定義的變量稱作全局變量,它從定義處生效。

8.11.如果局部變量與全局變量同名,則同名全局變量被屏蔽。

8.12.局部變量的存儲方式分為:自動(auto,默認)、靜態(tài)(static)、寄存器

(register)o

8.13.存儲方式和數(shù)據(jù)類型是變量的兩個重要屬性,必須在定義變量時一并聲

明,關(guān)鍵字的排列順序沒有限制。變量的默認數(shù)據(jù)類型為int,默認存儲

方式為auto,但關(guān)鍵字auto和int不可同時缺省。

8.14.auto型局部變量占用動態(tài)數(shù)據(jù)區(qū),當(dāng)函數(shù)調(diào)用結(jié)束時釋放所占內(nèi)存。

register占用CPU中的寄存器,但寄存器不夠用時,占用動態(tài)數(shù)據(jù)區(qū)。

8.15.全局變量和static型局部變量占用靜態(tài)數(shù)據(jù)區(qū),默認初值為相應(yīng)數(shù)據(jù)類型

的0。

8.16.static型局部變量的聲明和初始化只執(zhí)行一次。

8.17.如果全局變量被聲明為static型,則其它程序文件不能使用該全局變量。

否則,其它程序文件也可使用該全局變量,但使用前應(yīng)作extern聲明。

8.18.被聲明為static型的函數(shù),只在本程序文件中有效,不能被其它程序文件

調(diào)用。否則,其它程序文件也可調(diào)用此函數(shù),但調(diào)用前應(yīng)作extern聲明。

8.19.常用數(shù)學(xué)函數(shù)在頭文件math.h中。掌握基本初等函數(shù)。

第9章預(yù)處理命令

9.1.預(yù)處理命令在程序編譯前執(zhí)行,其主要功能是“文本置換”。

9.2.不帶參數(shù)宏定義的格式和功能如下:

格式:#define宏名文本

功能:在預(yù)處理時,將程序中宏名用相應(yīng)的文本置換。

9.3.帶參數(shù)宏定義的格式和功能如下:

格式:#define宏名(形參表列)文本

功能:在預(yù)處理時,將程序中帶參數(shù)的宏用相應(yīng)的文本置換,且文本中的

形參被相應(yīng)的實參所置換。

注意:形參無須且做類型聲明。

9.4.終止宏定義的格式如下:

格式#undef宏名

95宏定義可以引用已有的宏,亦可重新定義所代表的文本。

9.6.預(yù)處理命令無須以分號結(jié)尾,否則分號也參與置換。

9.7.include命令的格式和功能如下:

格式一:#inchide”文件名"

格式二:#include<文件名〉

功能:在預(yù)處理時,用指定文件置換本命令一一加載文件。置換后,被包

含文件成為本文件的一部分,其函數(shù)、全局變量等均可在本文件中直接使

用,無須作extern聲明。前一種格式先在當(dāng)前目錄中找指定文件,如果

未找到,方到存放C頭文件的目錄中查找。后一種格式直接到存放C頭

文件的目錄中查找指定文件。

9.8.條件編譯命令的格式和功能如下:

格式一:#ifdef宏名程序段1#else程序段2#endif

功能:在預(yù)處理時,如果指定的宏名已定義,則用程序段1置換本命令,

否則用程序段2置換本命令。當(dāng)程序段2為空時,#else可省略(下同)。

格式二:#ifndef宏名程序段1#else程序段2#endif

功能:在預(yù)處理時,如果指定的宏名未定義,則用程序段1置換本命令,

否則用程序段2置換本命令。

格式三:#if常量表達式程序段l#else程序段2#endif

功能:在預(yù)處理時,如果指定常量表達式的值為真(非0),則用程序段1

置換本命令,否則用程序段2置換本命令。

9.9.注釋命令在預(yù)處理時被刪除,不影響源程序和目標(biāo)程序。注釋命令的格式

如下:

/*注釋內(nèi)容*/

第10章指針

10.1.內(nèi)存的基本單位是字節(jié),每個字節(jié)都有相應(yīng)的編號,稱作地址或指針。借

助于指針,C語言可以直接訪問內(nèi)存,從而對硬件進行操作。

10.2.變量所占用內(nèi)存的大小由其數(shù)據(jù)類型決定,變量所占用內(nèi)存的第1個字節(jié)

的地址稱作該變量的地址或指針,表為:

&變量名

10.3.指針?biāo)赶驍?shù)據(jù)的類型稱作該指針的基類型,它所指向數(shù)據(jù)用

*指針

訪問,可作為普通變量使用。

10.4.指針本身也是一種數(shù)據(jù)類型,占用2字節(jié)內(nèi)存,可作為無符號整數(shù)輸出和

參與關(guān)系運算、邏輯運算,但指針的其它運算不同于整數(shù)運算。

10.5.指針運算可簡單地分為以下五類:

(1)單目運算有六個:!、&、*、++、--、sizeofo

(2)雙目運算有四種:-、關(guān)系運算、邏輯運算、賦值運算。

(3)指針與整數(shù)間的運算有三個:+、-、口。

(4)強制類型轉(zhuǎn)換運算:()。

(5)結(jié)構(gòu)體成員運算:->。

其中,+、-、++、--、+=、-=均以基類型數(shù)據(jù)為基本單位。

10.6.一維數(shù)組的數(shù)組名可作為指針調(diào)用,它指向數(shù)組中的第一個元素,以數(shù)組

中元素的類型為基類型。數(shù)組名的值不可修改,且sizeof(數(shù)組名)的值為

整個數(shù)組所占內(nèi)存的字節(jié)數(shù)。

10.7.對于一維數(shù)組來說,

基址+i和&基址[i]

均指向數(shù)組中的第i+1個元素(i>=0);

*(基址+i)和基址[i]

均表示數(shù)組中的第i+1個元素(i>=0)。

10.8.n維數(shù)組可看作是以n-1維數(shù)組為元素的一維數(shù)組,數(shù)組名可看作是指向

數(shù)組中的第一個n-1維數(shù)組的指針。

10.9.下標(biāo)變量可作為實參,但不可作為形參,實際上,它被誤認為指針。

10.10.XC源程序經(jīng)編譯后,系統(tǒng)為源程序中的每個函數(shù)均分配一個入口地

址,稱作函數(shù)指針。在C源程序中,函數(shù)指針用函數(shù)名表示,其值不可

修改。以函數(shù)指針為值的變量稱作函數(shù)指針變量,其定義格式為:

函數(shù)類型名(*函數(shù)指針變量名X);

可用下述格式代替函數(shù)名:

(*函數(shù)指針)

10.11.函數(shù)返回值可以是指針,定義函數(shù)的一般格式為:

基類型*函數(shù)名(形參列表){函數(shù)體}

10.12.不允許將非0數(shù)直接賦給指針變量,須做強制轉(zhuǎn)換。當(dāng)指針變量的值

為0時,稱之為空指針。

10.13.X以指針為元素的數(shù)組稱作指針數(shù)組。

10.14.X以指針為基類型的指針稱作指向指針的指針,以指向指針的指針為

值的變量稱作指向指針的指針變量,其定義格式為:

存儲方式關(guān)鍵字基類型名**指向指針的指針變量名

10.15.XC源程序經(jīng)編譯、連接所得目標(biāo)程序(exe文件)可作為DOS外部命

令使用,命令行的一般式為:

路徑'目標(biāo)程序文件名參數(shù)1參數(shù)2…參數(shù)n

10.16.XC主函數(shù)main可帶兩個形參,前者為int型,用于接收命令行中字

符串個數(shù),后者為字符串指針數(shù)組,用于接收命令行中各字符串。帶參主

函數(shù)的格式為:

voidmain(int形參l,char*形參2[]){函數(shù)體}

其中,

‘形參1=參數(shù)個數(shù)+1

形參2[0]="路徑'目標(biāo)程序文件名”

形參2[i]="參數(shù)i",i=l,2,-,n

標(biāo)注※表示此部分為非考試內(nèi)容。

第11章結(jié)構(gòu)體與共用體

11.1.聲明結(jié)構(gòu)體語句的一般格式為:

struct標(biāo)識符{成員表列};

其中,成員表列為一組聲明變量的語句,這些變量稱作該結(jié)構(gòu)體的成員,

又稱數(shù)據(jù)項、分量、域

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論