免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
C語言概述

1 C語言的起源

1972年,貝爾實(shí)驗(yàn)室的丹尼斯·里奇(Dennis Ritch)和肯·湯普遜(Ken Thompson)在開發(fā)UNIX操作系統(tǒng)時(shí)設(shè)計(jì)了C語言。

C語言是在B語言(湯普遜發(fā)明)的基礎(chǔ)上進(jìn)行的設(shè)計(jì)。

2 C語言的特點(diǎn)

2.1 優(yōu)點(diǎn)

設(shè)計(jì)特性:能輕松的完成自定向下的規(guī)劃、結(jié)構(gòu)化編程和模塊化設(shè)計(jì);C語言編寫的程序更易懂、更可靠。

高效性:運(yùn)行速度快,更接近匯編語言的高效特性和微調(diào)的能力。

可移植性:C程序只需要稍作修改或不修改,通過其他系統(tǒng)的C編譯器進(jìn)行編譯就能其他的系統(tǒng)上運(yùn)行。而無論是使用家庭計(jì)算機(jī)、專業(yè)工作站,還是大型機(jī);無論是使用Windows、Unix、linux還是Mac操作系統(tǒng);從8位微處理器到超級計(jì)算機(jī)都能找到針對特定系統(tǒng)的C編譯器。

強(qiáng)大而靈活:很多的操作系統(tǒng)有C程序的代碼以及很多編程語言的編譯器、解釋器都由C語言實(shí)現(xiàn),C程序還可解決物理學(xué)、工程學(xué)的問題,甚至可用于制作電影的動畫特效

面向程序員:程序利用C可以訪問硬件、控制內(nèi)存中的位。

2.2 缺點(diǎn)

C語言功能強(qiáng)大,但卻很容易犯錯(cuò)誤。特別是指針的使用很強(qiáng)大,但稍不留神就容易出錯(cuò)。

3 C語言標(biāo)準(zhǔn)

3.1 K&R C或經(jīng)典C

1987年,布萊恩·柯林漢(Brian Kernighan)和丹尼斯·里奇(Dennis Ritchie)合著的The Programming Language第一版是公認(rèn)的C標(biāo)準(zhǔn),通常稱之為K&R C或經(jīng)典C。實(shí)際上,由于缺乏官方標(biāo)準(zhǔn),UNIX實(shí)現(xiàn)提供的庫已成為標(biāo)準(zhǔn)庫。

3.2 ANSI/ISO C標(biāo)準(zhǔn)(也叫C89或C90標(biāo)準(zhǔn))

美國國家標(biāo)準(zhǔn)協(xié)會(ANSI)于1983年組建了一個(gè)委員會(X3J11),開發(fā)了一套新標(biāo)準(zhǔn),并于1989年正式公布。該標(biāo)準(zhǔn)定義了C語言和C標(biāo)準(zhǔn)庫。

國際標(biāo)準(zhǔn)化組織與1990年采用了這套C標(biāo)準(zhǔn)(ISO C)。ISO C和ANSI C是完全相同的標(biāo)準(zhǔn)。

ANSI/ISO標(biāo)準(zhǔn)的最終版本通常叫作C89(因?yàn)锳NSI于1989年批準(zhǔn)該標(biāo)準(zhǔn))或C90(因?yàn)镮SO于1990年批準(zhǔn)該標(biāo)準(zhǔn))。另外,由于ANSI先發(fā)布C標(biāo)準(zhǔn),因此業(yè)界人士通常使用ANSI C。

3.3 C99標(biāo)準(zhǔn)

1994年,ANSI/ISO 聯(lián)合委員會(C9X委員會)開始修訂C標(biāo)準(zhǔn),最終發(fā)布了C99標(biāo)準(zhǔn)。

3.4 C11標(biāo)準(zhǔn)

標(biāo)準(zhǔn)委員會在2007年承諾C標(biāo)準(zhǔn)的下一個(gè)版本是C1X,2011年終于發(fā)布了C11標(biāo)準(zhǔn)。

4 C程序的編譯與鏈接

C程序的源代碼通過編譯器的編譯生成目標(biāo)代碼,目標(biāo)代碼、庫代碼和啟動代碼通過連接器的鏈接生成可執(zhí)行代碼。其過程如下圖所示:

5 C程序的基本結(jié)構(gòu)

5.1 典型的C程序

一個(gè)簡單的C程序代碼:

#include intmain(void)/*一個(gè)簡單的C程序*/{ intnum;/*定義一個(gè)名為num的變量*/ num=1;/*為num賦值*/ printf('I am a simple ');/*使用printf()函數(shù)*/ printf('computer.\n'); printf('My favorite number is %d because it is first.\n',num); return0;}

一個(gè)簡單的C程序可剖析為如下結(jié)構(gòu):

5.2 簡單C程序基本概念

5.2.1 #include指令和頭文件

#include這行代碼是一條C預(yù)處理器指令(preprocessor directive)。通常,C編輯器在編譯前會對源代碼做一些準(zhǔn)備工作,即預(yù)處理(preprocessor)。

#include <stido.h>的作用相當(dāng)于吧stdio.h文件中的所有內(nèi)容都輸入到該行所在的位置。

5.2.2 main()函數(shù)

C程序一定是從main函數(shù)開始,并以main函數(shù)的結(jié)束而結(jié)束。

5.2.3 注釋

適當(dāng)?shù)淖⑨屇芴岣叱绦虻目勺x性,在C程序中支持兩種注釋風(fēng)格。具體如下:

/*這是一條注釋,可多行注釋*///這是一條注釋,只能單行注釋(C99新增的注釋風(fēng)格)

5.2.4 花括號、函數(shù)體和塊

{ ...... }

一般而言,所有的C函數(shù)都使用花括號來標(biāo)記函數(shù)體開始和結(jié)束。例如main函數(shù):

intmain(void){ /*函數(shù)體*/ }

花括號還用于把函數(shù)中的多條語句合并為一個(gè)單元或塊。例如for語句:

for(;;){ /*多條語句*/ }

5.2.5 聲明

int num;

這條聲明完成了兩件事,其一,在函數(shù)中有一個(gè)名為num的變量,其二,int表明num是一個(gè)整數(shù)。

在C語言中,所有的變量都必須先聲明才能使用。

5.2.6 賦值

num =1;

在執(zhí)行int num;聲明時(shí),編譯器在計(jì)算機(jī)內(nèi)存中為變量num預(yù)留了空間,然后在執(zhí)行這行賦值表達(dá)式時(shí),把值存儲在之前預(yù)留的位置。

5.3 調(diào)試程序

5.3.1 語法錯(cuò)誤

不遵循C語言的規(guī)則就會犯語法錯(cuò)誤。 編譯器一般能檢測出來。

5.3.2 語義錯(cuò)誤

語義錯(cuò)誤就是意思上的錯(cuò)誤。編譯器一般不能檢測出來。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
C語言基本概念(2014-11-11)
C語言中的“三字母詞”坑了工程師
嵌入式er日常!一直不太明白C語言編譯后的這個(gè)問題
c++語言的常見問題
C語言標(biāo)準(zhǔn)
C語言的三套標(biāo)準(zhǔn):C89、C99、C11
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服