C語言考點
下面是百分網(wǎng)小編收集的C語言考點,歡迎學(xué)習(xí)!更多內(nèi)容請關(guān)注應(yīng)屆畢業(yè)生考試網(wǎng)!
C語言考點:文件
【考點1】文件類型指針
文件指針是一個指向結(jié)構(gòu)體類型的指針,定義格式為:FILE *指針變量名。在使用文件時,都需要先定義文件指針。
【考點2】文本文件與二進制文件
文本形式存放的是字符的ASCII碼,二進制形式存放的是數(shù)據(jù)的二進制。例如“100”如果是文本形式就是存儲’1’、 ’0’、 ’0’三個字符的ASCII碼(00110001 00110000 00110000),如果是二進制形式就把100轉(zhuǎn)化成二進制(01100100)。
【考點3】打開文件
文件的打開形式:
FILE *fp;
fp=fopen(“c:\\lab.c”,”rb”);。
fopen函數(shù)的前面一部分為文件名,后面一部分為文件的使用方式。其中r代表讀,w代表寫,a代表添加,b代表二進制位的。
【考點4】文件函數(shù)
判斷文件結(jié)束feof函數(shù),移動文件指針位置fseek函數(shù),獲得文件位置ftell函數(shù),文件位置移到開頭rewind函數(shù),文件字符輸入輸出fgetc函數(shù)和fputc函數(shù),文件輸入輸出fscanf函數(shù)和fprintf函數(shù),文件字符串輸入輸出fgets函數(shù)和fputs函數(shù),讀寫二進制文件fread函數(shù)和fwrite函數(shù)。
以上函數(shù)要求知道格式會用,清楚是用于二進制文件還是文本文件。
C語言考點:對C語言的`深入探討
【考點1】編譯預(yù)處理
凡以#開頭的這一行,都是編譯預(yù)處理命令行,編譯預(yù)處理不加分號,不占運行時間。宏替換僅是簡單的文本替換,如#define f(x) (x)*(x)和#define f(x) x*x替換f(2+2)時就有區(qū)別,前者展開為(2+2)*(2+2),后者為2+2*2+2。
如果源文件f2.c中有#include"f1.c"可以理解為把源文件f1.c原樣包含到f2.c中,使f1.c和f2.c融合到一起成為一個C程序編譯。所以一個C程序必有主函數(shù),但一個C源文件未必有主函數(shù)。
【考點2】標(biāo)識符作用域
局部變量是在函數(shù)內(nèi)或復(fù)合語句內(nèi)定義的變量,作用域為定義它的函數(shù)內(nèi)。局部變量有三種類型:自動auto,寄存器register和靜態(tài)static。
自動變量隨著函數(shù)的使用與否創(chuàng)建消失;寄存器變量分配在cpu中,沒有內(nèi)存地址;靜態(tài)變量占用固定存儲單元,在程序執(zhí)行過程不釋放,直到程序運行結(jié)束。
全局變量是在函數(shù)外定義的變量,作用域從定義它的位置到整個源文件結(jié)束為止,生存期為整個程序運行期間。全局變量都是靜態(tài)變量。
【考點3】動態(tài)存儲分配
malloc(size)用來創(chuàng)建size個字節(jié)的連續(xù)存儲空間,返回值類型為void *型。malloc函數(shù)常用于動態(tài)創(chuàng)建鏈表結(jié)點,如int *p; p=(int *)malloc(sizeof(int));。
calloc(n,size)創(chuàng)建n個同一類型的連續(xù)存儲空間,可以理解為n個malloc。
int *p; p=(int *) calloc (10,sizeof(int));。p指向首地址。
free(p)釋放動態(tài)分配的存儲單元。
【考點4】main函數(shù)的參數(shù)
還有main(int argc,char **argv) {}
這種含有參數(shù)的題目,是很呆板的題目。第一個參數(shù)是表示輸入的字符串的數(shù)目,第二個參數(shù)是指向存放的字符串。
【考點5】函數(shù)指針
函數(shù)指針的用法(*f)()記住一個例子:
int add(int x, int y)
{....}
main()
{ int (*f)();
f=add;
}
賦值之后:合法的調(diào)用形式為
1、add(2,3);
2、f(2,3);
3、(*f)(2,3);
C語言考點:結(jié)構(gòu)體和共用體
【考點1】結(jié)構(gòu)體類型的說明
結(jié)構(gòu)體是若干個類型數(shù)據(jù)的集合,
結(jié)構(gòu)體類型說明格式:
struct 類型名 {類型1 成員名1;類型2 成員名2;……};,以上整個部分是一個數(shù)據(jù)類型,與整型的int是同樣地位?捎胻ypedef把結(jié)構(gòu)體類型替換成一個只有幾個字母的簡短標(biāo)識符。
【考點2】結(jié)構(gòu)體變量的定義
結(jié)構(gòu)體變量是用說明的結(jié)構(gòu)體類型所定義的一個變量,與結(jié)構(gòu)體類型不是一回事。一個結(jié)構(gòu)體變量所占字節(jié)數(shù)為其所有成員所占字節(jié)數(shù)之和。如struct stu{char name[10];int age;} a,b;則表明定義了兩個結(jié)構(gòu)體變量a,b,每個變量占14個字節(jié)。a,b與int i,j;中的變量i,j是同樣地位。typedef 考的很多(教材150頁例6)。
【考點3】結(jié)構(gòu)體成員的引用
引用成員可用以下3種方式:(1)結(jié)構(gòu)體變量名.成員名;(2)指針變量名->成員名:(3)(*指針變量名).成員名。點(.)稱為成員運算符,箭頭(->)稱為結(jié)構(gòu)指向運算符。
【考點4】共用體
共用體的使用格式與結(jié)構(gòu)體相似,共用體定義的關(guān)鍵字為union,共用體所占字節(jié)數(shù)是所有成員中字節(jié)數(shù)最大的那個。
union TT
{ int a;
char ch[2];} t1 ;
main()
{t1.a=0x1234;
printf("%x\n",t1.ch[0] );
printf("%x\n",t1.ch[1] );}
考點一: sizeof (struct TT) = 2;
考點二: TT t1 ; t1.a=0x1234;
那么 ch[0]=0x 34; ch[1]=0x12
結(jié)構(gòu)體和共用體以及鏈表要掌握最簡單的。typedef 考的很多,而且一定要知道如何引用結(jié)構(gòu)體中的各個變量,鏈表中如何填加和刪除節(jié)點,以及何如構(gòu)成一個簡單的鏈表,一定記住鏈表中的節(jié)點是有兩個域,一個放數(shù)值,一個放指針。
【考點5】鏈表
鏈表是由一個個結(jié)點構(gòu)成的,一個結(jié)點就是一個結(jié)構(gòu)體變量。每個結(jié)點可以分為數(shù)據(jù)域與指針域兩個部分,數(shù)據(jù)域用來存放要存儲的數(shù)據(jù),指針域用來指向下一個結(jié)點。鏈表是考試中的難點,在C語言和公共基礎(chǔ)部分都會考到,要掌握,鏈表中如何增加和刪除節(jié)點(每年都考),以及何如構(gòu)成一個簡單的鏈表,一定記住鏈表中的節(jié)點是有兩個域,一個放數(shù)值,一個放指針。
【C語言考點】相關(guān)文章:
計算機C語言考點大全11-18
計算機二級C++考點:C++語言概述10-06
C語言for循環(huán)11-14
計算機二級C語言字考點歸納11-23
2016計算機二級《C語言》重要考點11-13
計算機二級C語言《循環(huán)結(jié)構(gòu)》考點10-05
assert用法(C語言)11-24
C語言程序介紹11-24