C程序設(shè)計(jì)語言學(xué)習(xí)筆記01

1、C語言簡(jiǎn)介

  • 現(xiàn)今主流語言C++與Java—都建立在C語言的語法和基本結(jié)構(gòu)的基礎(chǔ)上籽慢。

  • C語言是一種通用的程序設(shè)計(jì)語言犯助,其特點(diǎn)包括簡(jiǎn)潔的表達(dá)式栗竖、流行的控制流和數(shù)據(jù)結(jié)構(gòu)暑脆、豐富的運(yùn)算符集等。

  • C語言并不受限于任何一種操作系統(tǒng)或機(jī)器狐肢,并不專用于某一領(lǐng)域添吗,C語言的限制少,通用性強(qiáng)份名,這使得它比一些公認(rèn)為功能強(qiáng)大的語言使用更方便碟联、效率更高。

  • C語言最初是由Dennis Ritchie為UNIX操作系統(tǒng)設(shè)計(jì)的僵腺,UNIX操作系統(tǒng)鲤孵、C編譯器和幾乎所有的UNIX應(yīng)用程序都是用C語言編寫的。

  • C語言提供了很多數(shù)據(jù)類型辰如。其基本類型包括字符普监、具有多種長(zhǎng)度的整型和浮點(diǎn)數(shù)等。另外,還有通過指針凯正、數(shù)組毙玻、結(jié)構(gòu)和聯(lián)合派生的各種數(shù)據(jù)類型。表達(dá)式由運(yùn)算符和操作數(shù)組成廊散。任何一個(gè)表達(dá)式桑滩,包括賦值表達(dá)式
    或函數(shù)調(diào)用表達(dá)式,都可以是一個(gè)語句允睹。指針提供了與具體機(jī)器無關(guān)的地址算術(shù)運(yùn)算运准。

  • C語言為實(shí)現(xiàn)結(jié)構(gòu)良好的程序提供了基本的控制流結(jié)構(gòu);語句組擂找、條件判斷(if-else)、多路選擇(switch)浩销、終止測(cè)試在頂部的循環(huán)(while贯涎、for)、終止測(cè)試在底部的循環(huán)(do)慢洋、提前跳出循環(huán)(break)等塘雳。

  • 函數(shù)可以返回基本類型、結(jié)構(gòu)普筹、聯(lián)合或指針關(guān)型的值败明。任何函數(shù)都可以遞歸調(diào)用。局部變量通常是“自動(dòng)的”太防,即在每次函數(shù)調(diào)用時(shí)重新創(chuàng)建妻顶。函數(shù)定義可以不是嵌套的,但可以用塊結(jié)構(gòu)的方式聲明變量蜒车。一個(gè)C語言程序的不同函數(shù)可以出現(xiàn)在多個(gè)單獨(dú)編譯的不同源文件中讳嘱。變量可以只在函數(shù)內(nèi)部有效,也可以在函數(shù)外部但僅在一個(gè)源文件中有效酿愧,還可以在整個(gè)程序中都有效沥潭。

  • 編譯的預(yù)處理階段將對(duì)程序文本進(jìn)行宏替換、包含其他源文件以及進(jìn)行條件編譯嬉挡。

  • C語言是一種相對(duì)“低級(jí)”的語言钝鸽,這就意味著C語言可以處理大部分計(jì)算機(jī)能夠處理的對(duì)象,比如字符庞钢、數(shù)字和地址拔恰。這些對(duì)象可以通過具體機(jī)器實(shí)現(xiàn)的算術(shù)運(yùn)算符和邏輯運(yùn)算符組合在一起并移動(dòng)。

C語言不提供直接處理諸如字符事基括、集合仁连、列表成數(shù)組等復(fù)合對(duì)象的操作。雖然可以將整個(gè)結(jié)構(gòu)作為一個(gè)單元進(jìn)行拷貝,但C語言沒有處理整個(gè)數(shù)組或字符串的操作饭冬。除了由函數(shù)的局部變量提供的靜態(tài)定義和堆棧外使鹅,C語言沒有定義任何存儲(chǔ)器分配工具,也不提供堆和無用內(nèi)存回收工具昌抠。最后患朱,C落言本身沒有提供輸入/輸出功能,沒有READ或WRITE語句炊苫,也沒有內(nèi)置的又件訪問方法裁厅。所有這些高層的機(jī)制必須由顯式調(diào)用的函數(shù)提供。C語言的大部分實(shí)現(xiàn)已合理地包含了這些函數(shù)的標(biāo)準(zhǔn)集合侨艾。

類似地执虹,C語言只提供簡(jiǎn)單的單線程控制流,即測(cè)試唠梨、循環(huán)袋励、分組和子程序,它不提供多道程序設(shè)計(jì)当叭、并行操作茬故、同步和協(xié)同例程。

盡管缺少其中的某些物性看起來好像是一個(gè)嚴(yán)重不足(“這就意味著必須通過調(diào)用函數(shù)來比較兩個(gè)字符串嗎?”)蚁鳖,但是把語言保持在一個(gè)適度的規(guī)模會(huì)有很多益處磺芭。

對(duì)大部分程序員來說,最重要的變化是函數(shù)聲明和函數(shù)定義的新語法∽砘現(xiàn)在钾腺,函數(shù)聲明中可以包含描述函數(shù)實(shí)際參數(shù)的信息;相應(yīng)地讥裤,定義的語法也做了改變垮庐。這些附加的信息使編澤器很容易檢測(cè)到因參數(shù)不匹配而導(dǎo)致的錯(cuò)誤。將廣泛使用的結(jié)構(gòu)賦值和枚舉定義為語言的正式組成部分坞琴;可以進(jìn)行單精度的浮點(diǎn)運(yùn)算哨查;明確定義了算術(shù)運(yùn)算的屬性,特別是無符號(hào)類型的運(yùn)算剧辐;對(duì)預(yù)處理器進(jìn)行了更詳盡的說明寒亥。

2、章節(jié)內(nèi)容

  • 第1章將對(duì)C語言的核心部分進(jìn)行簡(jiǎn)要介紹荧关。

    實(shí)際編寫程序才是學(xué)習(xí)一種新語言的好方法溉奕。
    本書的中心目的并不是介紹數(shù)據(jù)結(jié)構(gòu)和算法,而是專注于講解語言本身忍啤。
    
  • 第2章到第6章將更詳細(xì)地討論C語言的各種特性加勤,其中的重點(diǎn)將放在完整的程序例子上仙辟。

  • 第2章介紹基本的數(shù)據(jù)類型、運(yùn)算符和表達(dá)式鳄梅。

  • 第3章介紹控制流叠国,如if-else、switch戴尸、while和for等粟焊。

  • 第4章介紹函數(shù)和程序結(jié)構(gòu)——外部變量、作用域規(guī)則和多源文件等孙蒙,同時(shí)還會(huì)講述一些預(yù)處理器的知識(shí)项棠。

  • 第5章介紹指針和地址運(yùn)算。

  • 第6章介紹結(jié)構(gòu)和聯(lián)合挎峦。

  • 第7章介紹標(biāo)準(zhǔn)庫(kù)香追。標(biāo)準(zhǔn)庫(kù)提供了一個(gè)與操作系統(tǒng)交互的公用接口。

    這個(gè)函數(shù)庫(kù)是由ANSI標(biāo)準(zhǔn)定義的坦胶,這就意味著所有支持C語言的機(jī)器都會(huì)支持它透典,
    因此,使用這個(gè)庫(kù)執(zhí)行輸入迁央、輸出或其他訪問操作系統(tǒng)的操作的程序可以不加修改地運(yùn)行在不同機(jī)器上掷匠。
    
  • 第8章介紹C語言程序和UNIX操作系統(tǒng)之間的接口滥崩,我們將把重點(diǎn)放在輸入/輸出岖圈、文件系統(tǒng)和存儲(chǔ)分配上。

    盡管本章中的某些內(nèi)容是針對(duì)UNDX系統(tǒng)所寫的钙皮,但是使用其他系統(tǒng)的程序員仍然會(huì)從中獲益蜂科,
    

    比如深入了解如何實(shí)現(xiàn)標(biāo)準(zhǔn)庫(kù)及有關(guān)可移植性方面的一些建議。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末短条,一起剝皮案震驚了整個(gè)濱河市导匣,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌茸时,老刑警劉巖贡定,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異可都,居然都是意外死亡缓待,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門渠牲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來旋炒,“玉大人,你說我怎么就攤上這事签杈√闭颍” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)铣除。 經(jīng)常有香客問我谚咬,道長(zhǎng),這世上最難降的妖魔是什么通孽? 我笑而不...
    開封第一講書人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任序宦,我火速辦了婚禮,結(jié)果婚禮上背苦,老公的妹妹穿的比我還像新娘互捌。我一直安慰自己,他們只是感情好行剂,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開白布秕噪。 她就那樣靜靜地躺著,像睡著了一般厚宰。 火紅的嫁衣襯著肌膚如雪腌巾。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,754評(píng)論 1 307
  • 那天铲觉,我揣著相機(jī)與錄音澈蝙,去河邊找鬼。 笑死撵幽,一個(gè)胖子當(dāng)著我的面吹牛灯荧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播盐杂,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼逗载,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了链烈?” 一聲冷哼從身側(cè)響起厉斟,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎强衡,沒想到半個(gè)月后擦秽,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡漩勤,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年感挥,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片锯七。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡链快,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出眉尸,到底是詐尸還是另有隱情域蜗,我是刑警寧澤巨双,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站霉祸,受9級(jí)特大地震影響筑累,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜丝蹭,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一慢宗、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧奔穿,春花似錦镜沽、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至男摧,卻和暖如春蔬墩,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背耗拓。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工拇颅, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人乔询。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓樟插,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親哥谷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子岸夯,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容