




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第 24 頁 共 24 頁思維導圖1:C語言程序設計知識結構第一課 C語言程序設計基礎思維導圖2:第一課 C語言程序設計基礎本課主要知識點:1.知識點:C程序基礎l C語言是一種結構化程序設計語言。三種基本結構:順序、選擇、循環。2.知識點:C語言程序的構成l C程序是由函數構成的,一個C程序有且僅有一個main函數。一個函數由兩部分組成:函數的首部和函數體。函數體包括聲明部分和執行部分。一個C程序總是從main函數開始執行(即程序的入口),由main函數結束,(即程序的出口)。3.知識點:標識符l 命名規則: 標識符中只能包含字母 (a-z,A-Z),數字(0-9),下劃線(_)。第一個字符
2、必須是字母或下劃線。類型說明符:int,float,double等語句定義符:if,for,while等l 分類都是小寫 關鍵字(32個) (有固定含義,不可改變)庫函數的名字:printf , scanf 等編譯預處理命令名:include等 預定義標識符 (有特殊含義,可以改變) 用戶自定義的標識符 格式合法,不能使用關鍵字,見名知意4.知識點:數據類型5.知識點:常量l 整型常量十進制整常數:沒有前綴,其數碼為0-9。例如65535,-568八進制整常數:以0開頭,其數碼為0-7。例如015十六進制整常數:以0X或0x開頭,其數碼為0-9,A-F或a-f。例如0x2A長整型數:整型常數后
3、綴為L或l。例如358000L無符號數:整型常數后綴為U或u。例如158ul 實型常量的形式小數形式:必須有小數點,小數點前后不能同時沒有數字。指數形式:aEn(其中a表示十進制數,E階碼標志,n階碼)。E前E后必須有數字,E后必為整數,可以帶符號。例如2.1E-3、5E8l 字符常量:用單引號括起來的一個字符。包括普通字符常量和轉義字符。普通字符常量:如a、A、1。轉義字符:由一對單引號引起來的以開頭的若干字符的組合。如n表示回車換行、表示反斜線符、表示單引號符、”表示雙引號、ddd表示八進制數、xhh表示十六進制數。6.知識點:變量l 整型變量和實型變量以考試標準Viusal c+6.0為
4、例,說明各類型變量所占的位數。 類型所占位數所占字節數類型所占位數所占字節數short162unsigned int324int324unsigned long324long324float324unsigned short162double6487.知識點:ASCII碼l 0的ASCII碼值為48;A的ASCII碼值為65;a的ASCII碼值為97。l 大寫字母與小寫字母的ASCII碼值相差32。8.知識點:運算符的優先級級別由大到小:(邏輯)非 算(術運算符) 關(系運算符) (邏輯)與 (邏輯)或 條(件運算符) 賦(值運算符)9.知識點:強制類型轉換運算符l 一般形式:(類型說明符)(
5、表達式)l 功能:把表達式的運算結果強制轉換成類型說明符所表示的類型10.知識點:算術運算符: +、*、/、%:參與運算的量均為整型。/:當除號左右兩邊都是整數的時候,商也要是整數,如果不是整數則舍棄小數部分。當參與運算量有一個為實型,則商為double型。11.知識點:逗號表達式l 一般形式:表達式1,表達式2表達式nl 求值過程:自左向右依次求解,最后一個表達式的值為整個逗號表達式的值。12.知識點:自增自減運算符+i i自加1后再參與運算 i+ i參與運算后再自加1-i i自減1后再參與運算 i- i參與運算后再自減1+和- -的運算對象只能為變量,不能是常量或表達式。13.知識點:賦值
6、表達式l 一般形式:變量名=表達式l 賦值運算符左邊必須是變量,而不是表達式。14.知識點:位運算l 按位與運算&規則:0&0=0 0&1=0 1&0=0 1&1=1l 按位或運算|規則:0|0=0 0|1=1 1|0=1 1|1=1l 按位異或運算規則:00=0 01=1 10=1 11=0l 求反運算規則:0=1 1=0l 左移運算規則:把把左邊的運算數的各二進位全部右移若干位。高位補0,低位丟棄。右移一位相當于該數除以2。右移n位相當于除以2n。15.知識點:關系運算符和表達式16.知識點:邏輯運算符和表達式l 邏輯運算符優先級從高到低:!、&、|l 邏輯運算的真值表aba&ba|b!a
7、真真真真假真假假真假假真假真真假假假假真l 進行邏輯運算時,若&左邊的值為0,則不再對右邊的運算對象進行運算,整個表達式的值為0。l 若|左邊的運算對象的值為1,則不再對右邊的運算對象進行運算,整個表達式的值為1。17.知識點:格式輸入函數printf()(1)一般形式:printf(“格式控制字符串”,輸出列表);(2)遇到控制字符,按照控制字符的規定輸出,遇到非格式字符串按原樣輸出。18.知識點:格式輸入函數scanf()(1)一般形式:scanf(“格式控制字符串”,地址列表);(2)若格式控制字符串中有非格式字符串,則按原樣輸入。若格式控制字符串中(3)在輸入字符數據時,若格式控制字符
8、串中無非格式字符,則認為所有輸入的字符均為有效字符。空格會被當作字符賦值給變量。(4)格式字符串l 一般形式:%*輸入數據寬度長度類型l *表示該輸入項,讀入后不賦予相應的變量。l 輸入數據寬度:用十進制數指定輸入的字符數。l 當定義的變量類型和scanf中“格式符”類型不一致時(這里只限定在字符型和整型兩種類型,其他數據類型不可以。)整型和字符型之間通過ASCALL可以相互轉化。19.知識點:字符輸出函數putchar()一般形式:putchar(a);putchar(101);20.知識點:字符輸入函數getchar()一般形式:getchar();或ch=getchar();l getc
9、har經常作為while循環條件,判斷輸入哪一個字符時,循環結束。例如,輸入字符串,直到輸入0,程序結束,則可寫成while( getchar()!=0)第二課 選擇結構與循環結構本課重要知識點:1.知識點:if語句l if(表達式),其中表達式可以是任意合法的C語言表達式。l 對于單個if語句,其后跟隨的受if控制的只能是1個語句或者是1個復合語句。l 當多個if(表達式)單分支形式并行出現時,其執行順序是:先判斷第一if單分支的條件,如果為真,執行其后面的語句,執行完后,繼續向下執行。判斷第二個if單分支語句,依次類推。如果第一個if表達式的值為假,則不執行其后的語句,而去判斷第二個if單
10、分支條件。2.知識點:if語句的嵌套l 內嵌結構中,else總是與前面最近的且未曾配對的if語句配對,組成一對if-else語句。3.知識點:條件表達式l 一般形式:表達式1?表達式2:表達式3l 執行過程:表達式1的值為真,條件表達式取表達式2的值;表達式1的值為假,條件表達式取表達式3的值。4.知識點:switch語句l switch語句的圓括號中的表達式的值必須是整型或字符型,不能為實型。l case后的表達式可以是求得整型和字符型的常量表達式,但不能含有變量。l default的位置對程序的執行沒有影響。l 當switch語句和循環語句(for、while)時,要注意switch里面的
11、break語句退出的位置。解決這一問題的方法是:首先劃分結構,確定循環的語句體包括哪些語句。然后,在繼續劃分循環體內的語句,如果循環體內的語句只有一條switch語句,其內部出現了break,遇到break,要結束當前switch語句的執行,繼續執行下一次循環。5.知識點:while,do-while,for三種循環結構l 循環體部分可以只有一條空語句,不做任何操作。l while, for如果第一次判斷表達式的值為0,則循環一次也不執行。即while循環體最少執行0次。do-while循環體最少執行1次6.知識點:for語句l 表達式1、表達式2、表達式3可以缺省,但兩個分號不能省略。l 表
12、達式1和表達式3也可以是逗號表達式。l 注意區 賦值語句和判斷語句l 表達式1、表達式2、表達式3執行的過程7.知識點:循環嵌套8.知識點:break語句l 功能:跳出整個switch語句;跳出循環體,防止死循環。l break語句只能出現在switch、while、do-while、for循環中,不能出現在其他地方。l 作用范圍:所在循環體從屬的最內層循環,而不是外層的某個循環。9.知識點:continue語句l 功能:結束本次循環,接著判斷是否繼續下一次循環。l continue語句只能出現在while、do-while、for循環中。l 作用范圍:所在循環體從屬的最內層循環,而不是外層的
13、某個循環。第三課 數組本課重要知識點:1.知識點:一維數組的定義2.知識點:一維數組元素的引用3.知識點:一維數組的初始化l 順序列出數組元素的全部初值,例如int a5=1,2,3,4,5;l 只給數組的前面一部分元素設定初值,未賦初值的元素自動取0值。例如,int a5=1,2;l 對全部數組元素賦初值時,可以不指定數組元素的個數。例如,int a=1,2,3,4,5;4.知識點:二維數組的初始化l 按行分段給二維數組賦初值l 按行連續賦值l 對部分元素賦初值,未賦初值的元素自動取0值l 若對全部元素賦初值,則第一維的長度可以不指定5.知識點:二維數組和for語句6.知識點:字符串定義:由
14、“”引起來的,由若干個字符所組成的序列。字符串的結束標志:0如字符串“china”,在內存中存儲形式是china0該字符串的長度為5字節,所占的存儲空間為6字節。7.知識點:字符數組的定義及初始化l 字符數組名是地址常量,不能賦值給數組名。8.知識點:字符數組的輸入與輸出9.知識點:字符串處理函數第四課 指針本課重要知識點:1.知識點:指針的概念與指針變量l 指針就是地址。指針變量是用來存儲地址,而一般變量是用來存儲數值。2. 知識點:指針的引用l 指針的引用是通過兩個運算符實現“&”和“*”實現的 &是取地址符號,它的一半格式是:&變量名。例如:int i ; &i表示取i的地址。 *是取值
15、運算符,它的一般格式:*指針變量名。例如:int i=10,*p=&i; *p表示取i的值103.知識點:指針變量的初始化l 指針變量在使用前必須要初始化,把一個具體的地址賦給它,否則引用時會出錯,如果不指向任何數據就賦“空值”NULL。l 指針變量兩種初始化方法:方法一:int a=2,*p=&a;(定義的同時初始化) 方法二:int a=2,*p;p=&a;(先定義后初始化)4.知識點:指針的運算l *p+和(*p)+之間的差別:*p+是地址變化,(*p)+是指針變量所指的數據變化。一個指針變量加一個整數不是簡單的數學相加,而是連續移動若干地址。當兩個指針指向同一數組時,它們可以比較大小進
16、行減法運算。例如:int a10,*p; p=a; p+;表示p移動一個存儲單元,p指向a1,只有當指著指向數組元素時,指針的運動才有意義。5:知識點:指針與數組l 指針與一維數組數組名代表數組的首地址。一維數組中,第一個元素的地址即為該數組的起始地址。建立指針變量與一維數組的聯系:例如:int a6,*pa;pa=a;或pa=&a0;說明:數組名a代表該數組的首地址,也即a0的地址。 pa=a;或pa=&a0;使pa保存了數組a的首地址,pa,a,&a0都指向一個地址。 以上操作可等價于 int a6,*pa=a; 如果pa=&a3;表示*pa的值就是a3的地址。注意:數組a是一個地址常量,
17、它永遠指向數組的首地址,不能重新賦值。因此 a=&i;或a+都是錯誤的。6.知識點:用指針訪問數組元素l 通過指針引用數組元素例如:int *p,a5;p=&a0;說明:指針變量p指向了數組元素a0,可以使用訪問運算符“*”來引用變量a0; 例:*p=18;等價于a0=18; *(p+1)表示a1 p+1表示&a1l 通過數組的首地址引用數組元素例如:int a5;說明:a是數組名,表示收地址,可以把a當做一個指針常量。*a等價與a0,*(a+1)等價與a1;a等價于&a0,a+1等價與&a1;l 用帶下標的指針變量引用一維數組元素例如:int *p,a5; p=a;說明:p0表示p指針指向的
18、內存單元,p1表示p指向的內存單元 ai的等價引用方法:ai、pi、*(a+i)、*(p+i) ai的地址等價引用方法:&ai、&pi、a+i、p+i7.知識點:指針與二維數組l 任何一個二維數組均由若干個一維數組組成,a0、a1和a2是一維數組名,數組名代表數組的首地址,因此a0就代表數組元素a00的地址,也即&a00。注意:a的值與a0相同,但它們的基類型不同,a可以等價于一個二維指針,而a0是一維指針。因此 int a34,*p=a;錯誤取數組元素aij的地址的幾種方法:&aij;ai+j; *(a+i)+j;l 指針數組的定義方式:*指針數組名常量表達式;如:int *p3;l 行指針
19、的一般定義形式如下:類型名 (*指針數組名)常量表達式;如:int (*p)2;l 指針數組與行指針的區別1、int *p3;定義的是指針數組,表示一個數組,含有3個元素p0、p1、p2,且這3個元素只能存放整型元素的地址 2、int (*p)3;定義的是行指針,表示一個指針變量,它僅有一個存儲空間,只能存放一個長度為2的一維數組指針。8.知識點:指針與函數9.知識點:指針與字符串l 可以通過字符指針來處理字符串 “三名主義”(考試的重點) 數組名:表示第一個元素的地址。數組名是地址常量名,不能進行賦值和自加(減)等運算。(考了很多次) 函數名:表示該函數的入口地址。 字符串常量名:表示第一個
20、字符的地址。第五課 函數本課重要知識點:1、知識點:函數的概述l 源程序是由函數組成的,函數由函數首部與函數體組成,函數體包括聲明部分和執行語句部分組成。l 語言程序可以由多個源程序組成,其中一個源程序文件包含main函數,其他函數可以寫在另外的源程序文件中,為單獨文件,并且可以單獨編譯。程序的執行總是從main函數開始,完成對其它函數的調用后再返回到main函數,最后由main函數結束整個程序。main 函數可以調用其它函數,而不允許被其它函數調用。一個源程序必須有,也只能有一個主函數main。l 在一個函數的函數體內,不能再定義另一個函數,即不能嵌套定義。2、知識點:函數的定義l 函數返回
21、return語句的一般形式:return 表達式;或return (表達式);在函數中允許有多個return語句,但每次只能有一個return語句被執行。3、知識點:形參和實參及函數調用l 形參出現在函數定義中(即定義函數時函數名后面括號中的參數),實參出現在主調函數中(調用函數時函數名后面括號中的參數)l 形參在本函數體內都可以使用,離開該函數則不能使用。實參在主調函數中內有效,進入被調函數后,實參變量也不能使用。(注:在進行函數調用時,函數必須有確定的值)l 實參向形參單向傳遞數值,不能將形參的值反向的傳送給實參。實參和形參在數據上、類型上、順序上要一致。在函數調用過程中,形參的變化不會改
22、變實參的變化。l 在傳遞數值時,形參和實在分別占據不同的存儲單元(形參變量只有在被調用時才分配內存單元,調用結束后,即刻釋放分配的內存單元) “傳值”與“傳址”的區別:傳數值的話,形參的變化不會改變實參的變化。傳地址的話,形參的變化就有可能改變實參所對應的量。4、知識點:函數調用的一般形式和調用方式l 函數調用的一般形式為:函數名(實際參數表);實參可以是常數、變量或其他構造類型數據及表達式,也可以沒有(當為無參函數時)l 函數調用的方式:(1)函數表達式:函數作為表達式中的一項出現在表達式中,以函數返回值參與表達式運算。例如:z=max(x,y);(2)函數語句:函數調用的一般形式上加上分號
23、。例如:printf(“%dn”,a);(3)函數實參:函數作為另一個函數調用的實際參數出現。例如:printf(“%d”,max(x,y);l 程序從main函數進入,上往下執行,當碰到函數名后,把值傳給調用函數,當程序得到了返回值或調用函數結束,再順序往下執行,最后到main函數結束。5、知識點:函數的聲明及其位置l 函數要“先定義后調用”,或“先聲明再調用后定義”。函數的聲明一定要有函數名、函數返回值類型、函數參數類型,但不一定要有形參的名稱。一般形式為:類型說明符 被調函數名(類型 形參,類型 形參); 或 類型說明符 被調函數名(類型,類型);注意:其末尾“;”不能省例如:int m
24、ax(int a,int b); 或 int max(int ,int); 兩者功能相同l 省去主調函數中對被調函數的函數說明的幾種情況:(1)被調函數的返回值是整型或字符型時(返回值自動按整型處理)(2)當被調函數的函數定義在主調函數之前時(3)在所有函數定義之前,在函數外預先說明了各個函數的類型6、知識點:函數的嵌套調用l C語言中不允許作嵌套的函數定義,但是允許在一個函數的斷定儀中出現對另一個函數的調用,即嵌套調用。7、知識點:函數的遞歸調用l 函數直接或間接地調用自己稱為函數的遞歸調用。遞歸調用必須有一個明確的結束遞歸的條件。在做遞歸題時可把遞歸的步驟一步步寫下來,不要弄顛倒了。8、知
25、識點:局部變量和全局變量l 在一個函數內部或復合語句內部定義的變量,它只在本函數范圍內有效,也就是說只有在本函數內才能使用它們,在函數以外是不能使用這些變量的。這稱為局部變量,局部變量又稱為內部變量。函數的形參也屬于局部變量。l 在函數外部定義的變量,稱為全局變量,又稱為外部變量。全局變量可以被本文件的其他函數所共用。9知識點:變量存儲類別(auto變量、register變量、static變量) 靜態變量(static):(1)在編譯時分配存儲空間,所占存儲單元直到程序結束時才釋放,它的值在程序運行過程中一直存在,且變量的初始化只進行一次。(2)static說明符可以用于全局變量,也可用于局部
26、變量(auto和resgiter不可以定義全局變量)但是,當它說明變量后,只要這個變量還在程序中存在,那么不管用到還是沒有用到,它都將會占用內存單元。 自動變量(auto)(1)自動變量的存儲空間是當程序執行到定義它的函數或語句塊時才分配,當函數執行結束后自動釋放,變量的值也就不再存在。(2)局部變量的存儲類別默認為auto,可以省略不寫,但它不能定義全局變量。 寄存器變量(register):12、知識點:數組與函數l 數組用作函數參數有兩種形式:把數組元素(下標變量)作為實參使用和把數組名作為函數的形參和實參使用。l 數組元素作函數的實參與普通變量并無區別,所進行的傳遞是值,形參變量和實參
27、變量占據由編譯系統分配的兩個不同的內存單元;l 數組名作為函數參數時,所進行的傳遞是地址(相當于把實參數組的首地址賦予形參數組名或指針名),形參數組與實參數組為同一數組,共同擁有一段內存單元; 13指針與函數l 函數指針變量是指向函數的指針變量。定義的一般形式為: 類型說明符 (*指針變量名)(); 例如: int (*pf)();調用函數的一般形式:(*指針變量名)(實參表) 例如:z=(*p)(x,y); 注: (*指針變量名)中的“()”不能少l 函數指針變量不能進行算術運算。l 指針型函數是指返回指針值的函數。定義的一般形式為:類型說明符 *函數名(形參表) 例如:int *ap(in
28、t x,int y)第五課 結構體、鏈表與共用體本課重要知識點:1.知識點:用typedef定義類型l 功能:為已有數據類型取別名l 類型定義形式: typedef 舊類型名 新類型名;(例如:typedef double D ; )注意:(1) 定義的新名只是原名的一個別名,并不是建立一個新的數據類型;(2) 用新名和原名定義的對象具有相同的性質和效果。2. 知識點:結構體變量的定義具體形式實例說明形式1struct 結構體名類型標識符 成員名;類型標識符 成員名; .;struct 結構體名 變量名表列;struct student char num20;char name20; char
29、 sex;float score4;struct student stu1,stu2;特點:先定義類型,后定義變量注意:定義變量時,必須以struct student 開頭,缺一不可形式2struct 結構體名 類型標識符 成員名; 類型標識符 成員名; .變量名表列;struct student char num20;char name20; char sex;float score4; stu1,stu2;特點:定義類型的同時定義變量注意:之后再定義同類型變量時,也必須必須以struct student 開頭形式3struct 類型標識符 成員名;類型標識符 成員名; .變量名表列;str
30、uct char num20;char name20; char sex;float score4; stu1,stu2;特點:定義類型的同時定義變量注意:此形式省略了結構體名,預示著后續程序中將不再定義該類型變量形式4typedef struct 結構體名 類型標識符 成員名; 類型標識符 成員名; . STU;STU 變量名表列;typedef struct student char num20;char name20; char sex;float score4; STU;STU stu1,stu2;特點:先定義類型,后定義變量注意:用STU或struct student定義變量具有同等
31、效果,用STU形式簡潔方便3.知識點: 結構體變量各成員的引用l 引用結構體變量的成員的方法是:結構體變量名成員名 (例如:stu1.sex)l 結構體指針變量引用成員的方法是:形式1:(*指針變量名)成員名 (例如:(*p).num)形式2: 指針變量名-成員名 (例如:p-num)l 運算符級別,注意:()和-和 . 同級別,均大于*設有:struct student char num;char name20; struct date int year,mon,day birth;float score4;struct student *p,stu1;p=&stu1;成員類型成員操作方式說
32、明普通變量例如:引用成員變量num直接賦值:stu1.num=201101;間接賦值:p-num=201101輸入:scanf(“%d”,& stu1.num);輸出:printf(“%d”,stu1.num);數組例如:引用成員數組元素score0賦值:stu1.score0=75;間接賦值:p- score0=75;輸入:scanf(“%f”,& stu1. score0);輸出:printf(“%f”,stu1. score0);字符串例如:字符數組成員作為字符串name賦值:strcpy(,”zhangsan”);間接賦值:strcpy(,”zhangs
33、an”);輸入:scanf(“%s”, );輸出:printf(“%s”,);%s作為格式控制時,scanf和printf的輸入和輸出項均為地址結構體嵌套例如:引用內嵌結構體變量birth的成員year賦值:stu1.birth.year=1989;間接賦值:p- birth.year=1989;輸入:scanf(“%d”,& stu1. birth.year)輸出:printf(“%d”,stu1. birth.year)4.知識點: 結構體變量與函數調用l 將一個結構體變量的值傳遞給另一個函數,有3個方法: (1)用結構體變量的成員作參數。例如,用stu
34、1.num作實參,將值傳遞給形參。用法和用普通變量作實參是一樣的,屬于“單向值傳遞”方式。應當注意實參與形參的類型應保持一致。 (2)用結構體變量作實參。 對應形參也是同類型結構體變量,也屬于“單向值傳遞”方式。 (3)用指向結構體變量(或數組)的指針作實參,將結構體變量(或數組元素)的地址傳給形參。屬于“地址傳遞”方式,應注意在被調用函數中是否對該地址的值有影響。5.知識點:鏈表l 當一個結構體中有一個或多個成員的基類型就是本結構體類型時,通常把這種結構體稱為可以“引用自身的結構體”,也稱為“鏈表結構”例如:struct link char ch; Struct link *p; a; 在此
35、,p是一個可以指向struct link類型變量的指針成員,因此,a.p=&a是合法的表達式,由此構成的存儲結構如圖所示。l 對鏈表進行的操作通常有以下四種:1.建立帶有頭結點的單向鏈表2.順序訪問單向鏈表各結點數據域的值(即遍歷鏈表)struct stdint data; /*數據域*/ struct std * next; /*指針域*/;建立頭結點和數個節點,即建立以下鏈表datadatadatadatahead遍歷鏈表:p=head;while(p!=0) printf(%4d,p-data); p=p-next;datadatadatadataheadp q r3.刪除單向鏈表中的某
36、個結點刪除q指向的節點:p-next=q-next;或者p-next=r;free(p);datadatadataheadp q datar4.向單向鏈表中插入結點將r指向的節點插入p、q所指的兩個結點之間:r-next=q; 或者r-next=p-next;p-next=r;5.知識點:共用體類型定義l 共用體是一種構造數據類型(遵循先定義類型,再定義該類型變量的原則)l 用途:使幾個不同類型的變量共占一段內存(相互覆蓋)l 與結構體結構體與共用體1.區別: 存儲方式不同,結構體變量占用的內存單元,是其所有成員占內存單元的總和,而共用體變量是其所有成員中占用空間最大的成員的內存單元2.聯系:
37、 類型定義、變量定義、成員引用等操作方式相同,兩種類型可相互嵌套第六課 編譯預處理、文件本課重要知識點:1.知識點:main()函數的參數l 定義形式:main(int argc,char *argv) l int argc是命令行中的字符串數,char *argv是指向字符串的指針數組,系統使用空格把各個字符串隔開。2.知識點:不帶參數的宏定義l 一般形式:#define 宏名 字符串(或數值)即用字符串或數值取代宏名。l 宏名一般采用大寫字母表示,以與變量名區別,也可用小寫字母。l 宏定義不是C語句,不必在行末加分號。l 對程序中用“”括起來的字符串內的字符,即使與宏名相同,也不進行置換。
38、l 宏定義可以嵌套使用,例如:#define R 3.0#define PI 3.14159#define L L*PI*R3.知識點:帶參數的宏定義l 一般形式:#define 宏名(參數表) 字符串l 帶參數的宏不占運行時間,只占編譯時間;只是簡單、機械字符替換;宏名無類型。l 要注意有括號和沒括號的區別4.知識點:文件包含l 一般形式:#include 或者#include “文件名”l 與” ”的區別:即系統到存放C庫函數頭文件的目錄中尋找要包含的文件;” ”即系統先在用戶當前目錄中尋找,若找不到,再到存放C庫函數頭文件的目錄中尋找。l 文件包含可以嵌套。l 凡是以“#”開頭的行都是預處理命令行。5.知識點:calloc()函數l 函數原型:void *calloc(unsigned n,unsigne
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 遼寧中醫藥大學杏林學院《計算復雜性》2023-2024學年第二學期期末試卷
- 湘南學院《大學體育V》2023-2024學年第一學期期末試卷
- 沙洲職業工學院《版面設計與軟件應用》2023-2024學年第二學期期末試卷
- 江蘇省鹽城市大豐區實驗初級中學2024-2025學年初三下期4月月考復習語文試題試卷含解析
- 江門市重點中學2025年初三沖刺中考最后1卷化學試題含解析
- 武漢華夏理工學院《市場營銷學原理》2023-2024學年第二學期期末試卷
- 麗江職業技術學院《英語基礎寫作(二)》2023-2024學年第一學期期末試卷
- 內蒙古鴻德文理學院《車橋耦合振動》2023-2024學年第二學期期末試卷
- 羊只買賣合同范本
- 長沙理工大學城南學院《英語精讀(3)》2023-2024學年第一學期期末試卷
- 川教版(2024)小學信息技術三年級上冊《跨學科主題活動-在線健康小達人》教學實錄
- 2025中考物理總復習填空題練習100題(附答案及解析)
- 機械專業英語
- 高空作業車(剪叉式、曲臂式)驗收表
- 廣東省廣州市2024屆高三下學期一模考試 政治 含解析
- 血透患者敘事護理故事
- 義務教育小學科學課程標準-2022版
- 江西省南昌市2023-2024學年八年級下學期期中英語試題(含聽力)【含答案解析】
- 2024年全國國家版圖知識競賽題庫及答案
- 新教師三筆字培訓課件
- 藍色西湖大學頂部導航欄博士碩士研究生畢業論文答辯模板.x
評論
0/150
提交評論