-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

零基礎入門學習C語言——帶你學C帶你飛(微課視頻版)

( 簡體 字)
作者:小甲魚類別:1. -> 程式設計 -> C -> C
譯者:
出版社:清華大學出版社零基礎入門學習C語言——帶你學C帶你飛(微課視頻版) 3dWoo書號: 51152
詢問書籍請說出此書號!

缺書
NT售價: 395

出版日:5/1/2019
頁數:350
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302505945
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

為什么要學習C語言
  眾所周知,C語言是最古老的幾門編程語言之一,它至今仍然服務于現代社會。我們來看一下TIOBE排行榜近幾年的數據(見圖0-1),TIOBE排行榜是根據互聯網上有經驗的程序員、學校課程和第三方廠商提供的數據,并使用搜索引擎(如Google、Bing、Yahoo!、百度)以及Wikipedia、Amazon、YouTube統計出的排名數據,因此可以準確地反映出某個編程語言的熱門程度。

圖0-1 TIOBE排行榜(數據來自TIOBE官網,2019年3月數據)
  從圖0-1中可以看到,C語言雖然古老,但卻是“老當益壯”,近幾年仍然常年位居前列。C語言既沒有Java語言的跨平臺能力,又沒有“新潮”的面向對象的編程思想,也沒有垃圾回收機制……由于C語言的數組沒有做邊界檢查,導致了緩沖 區溢出攻擊的盛行。盡管如此,仍然有那么多程序員“鐘情”于C語言,這是為什么呢?
  C語言是伴隨著UNIX操作系統的興起而流行的,其語義簡明清晰,功能強大而不臃腫,簡潔而又不過分簡單,實在是工作、學習必備之“良友”。
  C語言也是一個比較少見的應用領域極為廣泛的語言。無論是Windows操作系統的API,還是Linux操作系統的API,或者是想給Ruby、Python編寫擴展模塊,C語言形式的函數定義都幾乎是唯一的選擇。C語言就好像一個中間層或者是“膠水”,如果想把不同編程語言實現的功能模塊混合使用,C語言是最佳的選擇。
  C語言還可以編寫服務器端軟件,如當前流行的Apache和Nginx都是使用C語言編寫的;在界面開發層面,C語言也頗有建樹,如大名鼎鼎的GTK+就是使用C語言開發出來的;由于C語言是一種“接近底層”的編程語言,因此也自然成為了嵌入式系統開發的最佳選擇。
  除此之外,大多數編程語言自身的第一個版本也是通過C語言實現的,借助C程序“一次編寫,處處編譯”的特性,最大地保證了這些程序語言的可移植性。
關于本書
  本書適合入門學習C語言的讀者,也適用于對編程一無所知,但渴望用編程改變世界的朋友。
  概念是死的,靠讀、背、記的方法確實可以通過老師的測驗,但卻很難實現舉一反三,將所學知識應用到現實開發中。因此,本書提倡“理解為主,應用為王”。只要有可能,小甲魚(作者,下同)就會想方設法地列舉一些有趣的例子,讓讀者在實踐中理解概念。
  本書從變量、數據類型、取值范圍等基本知識開始講解,再深入介紹兩大重要的結構——分支與循環,講到全書的重點——指針的時候,分散難點,依次講解數組與指針、函數與指針、結構體與指針,每個知識點結合恰當的實例進行演示,環環相扣,內容詳盡。
  目前多數C語言教材基于的是Windows操作系統,采用的編譯器(Visual C++ 6.0)其實早已被淘汰,所以本書的演示環境選擇更適合C語言的Linux操作系統(CentOS),帶讀者學習“大神們”都在使用的GCC編譯器,并確保所有代碼均符合C99標準。
  編程知識深似海,小甲魚沒辦法僅通過一本書將所有的知識都灌輸給讀者,但能夠做到的是培養讀者對編程的興趣,提高編寫代碼的水平,鍛煉自學的能力。
  最后,本書貫徹的核心理念是:實用、好玩、參與。
本書配套資源和網站支持
* PPT課件請在清華大學出版社網站本書頁面下載。
* 程序源代碼和小甲魚精心錄制的61集(17.5小時)視頻教程,請掃描書中對應二維碼獲取。
   注意:書中給出了程序源代碼的下載二維碼和視頻觀看二維碼,請先掃描封四刮 刮卡中的二維碼進行注冊,之后再掃描相關二維碼即可獲得配套資源。
* 同時,對于書中沒有展開詳述的內容提供了【擴展閱讀】,讀者可訪問書中的相關網址或掃描對應位置的二維碼進行閱讀。
* 本書還提供了額外的配套課后作業,如有需要,請在魚C論壇(https://fishc.com.cn)或聯系魚C工作室的小客服(https://fishc.taobao.com)購買學習。
* 如果在學習中遇到困難,可以到魚C論壇或關注魚C工作室微信公眾號獲取相關知識,與各位網友們相互交流和討論。論壇中的提問互助具有知識累積的特點,因為初學者很多問題是一樣的,所以不妨在提問之前先在論壇搜索一下相關的關鍵詞,一般都可以找到答案。

魚C工作室微信公眾號 本書源代碼下載
  由于小甲魚的水平有限,書中難免有一些錯誤和不準確的地方,懇請各位讀者不吝指正,有興趣的讀者可發送郵件至workemail6@163.com,期待收到大家的意見和建議。
致謝
  創作一本圖書是非常艱苦的,除了技術知識等因素之外,還需要非常大的毅力。特別感謝清華大學出版社的魏江江主任和劉星編輯,在近一年的時間里,是你們一次次在我遇到困難的時候給予鼓勵,讓我可以堅持寫下去,最后完成這一部作品。
  感謝不二如是、康小泡和風介等魚C論壇的諸位版主,因為你們夜以繼日地守護著我們的論壇,積極地為用戶解答問題,魚C論壇才有今天如火如荼的學習氛圍。
  最后,需要特別感謝一下我的妻子,是你一直在身邊照顧我、支持我,我才能把大量的時間投入到本書的寫作之中。謹以此書獻給你,我此生的摯愛!
  
                       小甲魚
                               2019年2月
內容簡介:

《零基礎入門學習C語言——帶你學C帶你飛(微課視頻版)》提倡“理解為主,應用為王”,通過列舉一些有趣的例子,讓讀者在實踐中理解概念。《零基礎入門學習C語言——帶你學C帶你飛(微課視頻版)》從變量、數據類型、取值范圍等基本知識開始講解,深入介紹分支與循環,講到指針的時候,分散難點,依次講解數組與指針、函數與指針、結構體與指針,每個知識點結合恰當的實例進行演示,環環相扣,內容詳盡。
編程知識深似海,小甲魚沒辦法僅通過一《零基礎入門學習C語言——帶你學C帶你飛(微課視頻版)》將所有的知識都灌輸給讀者,但能夠做到的是培養讀者對編程的興趣,提高編寫代碼的水平,鍛煉自學的能力。
《零基礎入門學習C語言——帶你學C帶你飛(微課視頻版)》貫徹的核心理念是:實用、好玩、參與。
《零基礎入門學習C語言——帶你學C帶你飛(微課視頻版)》適合學習C語言的入門讀者,也適用于對編程一無所知,但渴望用編程改變世界的朋友。
目錄:

第1章初窺門徑 1
視頻講解:121分鐘(9個)鐘
1.1C語言被淘汰了嗎 1
1.2莫爾斯密碼 2
1.3機器語言 2
1.4匯編語言 3
1.5C語言 4
1.6C語言的優勢 5
1.7第一個程序 6
1.8打印 7
1.9變量 11
1.10常量 14
1.10.1定義符號常量 14
1.10.2標識符 15
1.10.3字符串常量 15
1.11數據類型 16
1.12sizeof運算符 17
1.13signed和unsigned 19
1.14取值范圍 20
1.15字符 25
1.16字符串 28
1.17運算符 30
1.17.1算術運算符 31
1.17.2目 31
1.17.3表達式 32
1.17.4運算符的優先級和結合性 32
1.17.5類型轉換 34
第2章了不起的分支和循環 37
視頻講解:128分鐘(7個)鐘
2.1分支結構 37
2.1.1關系運算符 37
2.1.2關系表達式 38
2.1.3邏輯運算符 38
2.1.4邏輯表達式 39
2.1.5短路求值 40
2.1.6if語句 41
2.1.7switch語句 46
2.1.8分支結構的嵌套 48
2.1.9懸掛else 51
2.1.10等于號帶來的問題 53
2.2循環結構 54
2.2.1while語句 54
2.2.2do-while語句 57
2.2.3for語句 58
2.2.4靈活的for語句 60
2.2.5循環結構的嵌套 63
2.2.6break語句 65
2.2.7continue語句 68
2.3拾遺 69
2.3.1賦值運算符 69
2.3.2復合的賦值運算符 70
2.3.3自增自減運算符 70
2.3.4逗號運算符 71
2.3.5條件運算符 72
2.3.6goto語句 73
2.3.7注釋 74
第3章數組 76
視頻講解:67分鐘(4個)鐘
3.1一維數組 77
3.1.1定義一維數組 77
3.1.2訪問一維數組 77
3.1.3循環與數組的關系 78
3.1.4數組的初始化 79
3.1.5可變長數組 79
3.1.6字符數組 80
3.2字符串處理函數 81
3.2.1獲取字符串的長度 81
3.2.2復制字符串 82
3.2.3連接字符串 84
3.2.4比較字符串 85
3.3二維數組 86
3.3.1定義二維數組 86
3.3.2訪問二維數組 87
3.3.3二維數組的初始化 87
第4章指針 90
視頻講解:135分鐘(7個)鐘
4.1指針和指針變量 91
4.1.1定義指針變量 92
4.1.2取地址運算符和取值運算符 92
4.1.3避免訪問未初始化的指針 94
4.2指針和數組 94
4.2.1數組的地址 94
4.2.2指向數組的指針 96
4.2.3指針的運算 97
4.2.4指針和數組的區別 99
4.2.5指針數組和數組指針 100
4.2.6指針和二維數組 105
4.2.7數組指針和二維數組 108
4.3void指針 109
4.4NULL指針 112
4.5指向指針的指針 113
4.6指針數組和指向指針的指針 114
4.7再講數組指針和二維數組 116
4.8常量和指針 118
4.9指向常量的指針 119
4.10常量指針 120
4.10.1指向非常量的常量指針 120
4.10.2指向常量的常量指針 121
4.10.3指向“指向常量的常量指針”的指針 122
第5章函數 124
視頻講解:271分鐘(14個)鐘
5.1函數的定義和聲明 125
5.1.1熱身 125
5.1.2函數的定義 126
5.1.3函數的聲明 127
5.2函數的參數和返回值 128
5.2.1形參和實參 129
5.2.2傳值和傳址 130
5.2.3傳數組 131
5.2.4可變參數 134
5.3指針函數和函數指針 135
5.3.1指針函數 135
5.3.2誤區:返回指向局部變量的指針 136
5.3.3函數指針 137
5.3.4函數指針作為參數 138
5.3.5函數指針作為返回值 139
5.4局部變量和全局變量 140
5.4.1局部變量 140
5.4.2全局變量 142
5.4.3不要大量使用全局變量 145
5.5作用域和鏈接屬性 146
5.5.1代碼塊作用域 146
5.5.2文件作用域 147
5.5.3原型作用域 148
5.5.4函數作用域 148
5.5.5鏈接屬性 148
5.6生存期和存儲類型 151
5.6.1生存期 151
5.6.2存儲類型 152
5.7遞歸 156
5.7.1什么是遞歸 156
5.7.2遞歸求階乘 159
5.7.3漢諾塔 162
5.7.4分治法 165
5.7.5快速排序 166
5.8動態內存管理 168
5.8.1malloc 168
5.8.2free 169
5.8.3內存泄漏 170
5.8.4申請任意尺寸的內存空間 172
5.8.5calloc 175
5.8.6realloc 175
5.9C語言的內存布局 177
5.9.1代碼段 179
5.9.2數據段 180
5.9.3BSS段 180
5.9.4堆 182
5.9.5棧 182
5.10高級宏定義 184
 5.10.1不帶參數的宏定義 185
 5.10.2帶參數的宏定義 186
5.11內聯函數 188
5.12一些鮮為人知的技巧 190
5.12.1#和## 190
5.12.2可變參數 191
第6章結構體 193
視頻講解:205分鐘(12個)鐘
6.1結構體的聲明和定義 193
6.1.1結構體的聲明 193
6.1.2結構體的定義 194
6.1.3訪問結構體成員 195
6.1.4初始化結構體 197
6.1.5對齊 197
6.2結構體嵌套 199
6.3結構體數組 200
6.4結構體指針 201
6.5傳遞結構體信息 203
6.5.1傳遞結構體變量 203
6.5.2傳遞指向結構體變量的指針 206
6.6動態申請結構體 207
6.7單鏈表 212
6.7.1在單鏈表中插入元素(頭插法) 214
6.7.2在單鏈表中插入元素(尾插法) 216
6.7.3搜索單鏈表 218
6.7.4插入節點到指定位置 219
6.7.5在單鏈表中刪除元素 223
6.8內存池 225
6.9typedef 239
6.9.1給數據類型起別名 239
6.9.2結構體的好搭檔 242
6.9.3進階typedef 244
6.10共用體 249
6.10.1共用體的聲明 249
6.10.2共用體的定義 252
6.10.3初始化共用體 252
6.11枚舉 253
6.12位域 256
第7章位操作 260
視頻講解:26分鐘(2個)鐘
7.1邏輯位運算符 261
7.1.1按位取反 262
7.1.2按位與 262
7.1.3按位異或 262
7.1.4按位或 263
7.1.5和賦值號結合 263
7.2移位運算符 264
7.2.1左移運算符 264
7.2.2右移運算符 265
7.2.3和賦值號結合 265
7.2.4一些未定義行為 266
7.3應用 267
7.3.1掩碼 267
7.3.2打開位 268
7.3.3關閉位 268
7.3.4轉置位 269
第8章文件操作 270
視頻講解:108分鐘(6個)鐘
8.1文件是什么 270
8.2打開和關閉文件 271
8.3順序讀寫文件 273
8.3.1讀寫單個字符 273
8.3.2讀寫整個字符串 274
8.3.3格式化讀寫文件 277
8.3.4二進制讀寫文件 278
8.4隨機讀寫文件 281
8.5標準流 285
8.5.1標準輸入、標準輸出和標準錯誤輸出 285
8.5.2重定向 286
8.5.3錯誤處理 287
8.6I/O緩沖區 291
附錄A環境搭建教程 294
A.1安裝VirtualBox虛擬機 294
A.2獲取CentOS及版本選擇 298
A.3在虛擬機上安裝CentOS 300
A.4配置CentOS并安裝GCC編譯器 310
A.5安裝圖形界面 314
A.6安裝中文輸入法及設置合適的編程字體 320
A.7安裝VirtualBox增強工具及共享文件夾設置 326
A.8設置VIM編輯器 330
A.9MacOS搭建C語言學習環境 332
附錄BVIM快速入門 334
B.1使用h、j、k、l來移動光標 334
B.2插入模式和退出VIM的方法 335
B.3刪除命令、數字的魔力、撤銷和恢復命令 336
B.4粘貼/復制命令、替換命令、替換模式和修改命令 338
B.5文件信息、跳轉、定位括號和縮進 339
B.6搜索命令和替換命令 341
B.7執行shell命令、文件另存為、合并文件和打開多個文件 344
序: