-
>
闖進數學世界――探秘歷史名題
-
>
中醫基礎理論
-
>
當代中國政府與政治(新編21世紀公共管理系列教材)
-
>
高校軍事課教程
-
>
思想道德與法治(2021年版)
-
>
毛澤東思想和中國特色社會主義理論體系概論(2021年版)
-
>
中醫內科學·全國中醫藥行業高等教育“十四五”規劃教材
C程序設計(基于LINUX平臺)(微課版) 版權信息
- ISBN:9787302637318
- 條形碼:9787302637318 ; 978-7-302-63731-8
- 裝幀:平裝-膠訂
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
C程序設計(基于LINUX平臺)(微課版) 本書特色
本書內容來自一線教師的多年教學成果,同時作者有多年的企業從業實際工作經驗,所以教材定位準,內容實用,書中有大量的實用案例,非常適合學生和從業人員學習。
C程序設計(基于LINUX平臺)(微課版) 內容簡介
本書以“學完C語言之后知道能做什么”為編寫目標,共包括9章,分別是Linux C語言程序設計、C語言基礎Ⅰ、C語言基礎Ⅱ、鏈表、C標準庫、Linux系統調用、Socket編程、Pthreads編程和GTK圖形界面編程。其中,C語言基礎Ⅰ、C語言基礎Ⅱ、C標準庫和Linux系統調用為本書*基礎、*重要的四章,全面介紹了標準C語言的基本語法和Linux系統調用編程。其他章節告訴讀者C語言具體能做什么。本書堅守“空談無用,給我看代碼”(Linux之父Linus Torvalds所言)的信條,通過正確無誤的示例代碼向讀者展示C語言的具體用法。本書內容實用、結構清晰、圖文并茂,力求讓讀者可以饒有興趣地學習Linux C語言編程。 本書適合作為高等學校各專業的C語言程序設計課程教材,也可作為從事計算機相關工作的科技人員、計算機愛好者及各類自學人員的參考書。本書封面貼有清華大學出版社防偽標簽,無標簽者不得銷售。
C程序設計(基于LINUX平臺)(微課版) 目錄
1.1C語言1
1.1.1C語言簡介1
1.1.2C語言發展歷史2
1.1.3C語言特點2
1.2Linux簡介3
1.3Linux C語言程序設計簡介4
1.3.1Linux應用編程、系統編程和內核編程4
1.3.2Linux圖形界面編程4
1.4Linux C語言編程環境5
1.4.1安裝Ubuntu Linux虛擬機5
1.4.2gedit、vim和nano5
1.4.3C語言編譯器及集成開發環境6
1.4.4編寫Hello World程序7
1.5使用gcc編譯程序7
1.6使用make和Makefile構建程序9
1.7使用cmake和CMakeLists.txt構建程序15
1.8完整的編譯過程17
1.9習題18第2章C語言基礎Ⅰ21
2.1數據21
2.1.1數據類型21
2.1.2常量23
2.1.3變量和標識符25
2.1.4數據類型轉換26
2.1.5轉義字符(轉義序列)28
2.2運算符29
2.2.1運算符和表達式29
2.2.2算術運算312.2.3賦值運算32
2.2.4關系運算32
2.2.5邏輯運算符33
2.2.6條件運算符33
2.2.7逗號運算符34
2.2.8sizeof運算符與typedef類型聲明34
2.2.9位運算35
2.2.10復合賦值運算符36
2.3結構化程序設計37
2.3.1順序結構37
2.3.2分支結構38
2.3.3循環結構40
2.4輸入/輸出44
2.4.1標準輸出函數printf44
2.4.2標準輸入函數scanf47
2.5數組49
2.5.1一維數組49
2.5.2二維數組50
2.5.3一維字符數組51
2.5.4一維字符數組的輸入/輸出52
2.5.5字符串處理函數53
2.5.6二維字符數組55
2.6習題56第3章C語言基礎Ⅱ60
3.1函數60
3.1.1函數定義和聲明60
3.1.2函數調用及參數傳遞61
3.1.3函數的嵌套與遞歸65
3.1.4回調函數66
3.1.5return語句67
3.1.6全局變量、局部變量和作用域67
3.1.7變量的存儲類別及生存期68
3.1.8內部函數和外部函數70
3.2預處理71
3.2.1預處理的步驟71
3.2.2宏定義和內聯函數72
3.2.3條件編譯74
3.2.4文件包含74
3.3指針76
3.3.1指針的基本運算76
3.3.2指針與數組80
3.3.3指針與const限定符82
3.3.4指針與字符串84
3.3.5指針函數與函數指針84
3.3.6再講回調函數85
3.3.7可變參數87
3.3.8二級指針與多級指針89
3.3.9指針數組和數組指針90
3.3.10動態內存管理91
3.4結構體、共用體和枚舉93
3.4.1結構體93
3.4.2位域94
3.4.3共用體95
3.4.4枚舉96
3.5零長數組、變長數組和動態數組98
3.6編碼風格與縮進工具indent100
3.7習題102第4章鏈表106
4.1單向鏈表106
4.1.1單鏈表結構與鏈表結點類型106
4.1.2創建單鏈表107
4.1.3插入結點108
4.1.4刪除結點109
4.1.5讀取結點109
4.1.6查找結點110
4.1.7打印單鏈表110
4.1.8逆轉單鏈表111
4.1.9構建單循環鏈表111
4.1.10銷毀單鏈表111
4.1.11主函數及測試結果112
4.2雙向鏈表113
4.2.1雙鏈表結構與鏈表結點類型113
4.2.2創建雙鏈表114
4.2.3插入結點115
4.2.4刪除結點116
4.2.5讀取結點116
4.2.6查找結點117
4.2.7打印雙鏈表117
4.2.8逆轉雙鏈表118
4.2.9構建雙循環鏈表118
4.2.10銷毀雙循環鏈表119
4.2.11主函數及測試結果119
4.3內核鏈表120
4.3.1list_head120
4.3.2offsetof、container_of和list_entry121
4.3.3鏈表初始化122
4.3.4插入結點122
4.3.5刪除結點123
4.3.6替換結點123
4.3.7移動結點124
4.3.8判斷函數124
4.3.9合并結點125
4.3.10遍歷鏈表126
4.3.11用戶空間使用內核鏈表126
4.4習題128第5章C標準庫130
5.1C語言標準和glibc130
5.2標準輸入/輸出函數庫(stdio.h)132
5.2.1fopen/fclose132
5.2.2stdin/stdout/stderr134
5.2.3errno與perror函數135
5.2.4以字節為單位的I/O函數136
5.2.5以字符串為單位的I/O函數138
5.2.6以記錄為單位的I/O函數139
5.2.7格式化讀寫文件141
5.2.8操作讀寫位置的函數142
5.2.9FILE結構體及I/O緩沖區144
5.3標準工具函數庫(stdlib.h)147
5.3.1動態內存分配與釋放147
5.3.2整數算術149
5.3.3隨機數150
5.3.4數值字符串轉換151
5.3.5寬字符和多字節字符轉換152
5.4字符串處理函數庫(string.h)156
5.4.1初始化字符串156
5.4.2取字符串的長度157
5.4.3復制字符串157
5.4.4比較字符串159
5.4.5搜索字符串160
5.4.6連接字符串161
5.4.7分割字符串161
5.4.8本地函數163
5.5字符處理函數庫(ctype.h)165
5.6數學函數庫(math.h)167
5.7學生信息管理系統的設計與實現169
5.7.1系統設計要求170
5.7.2系統設計170
5.7.3函數設計170
5.7.4參考程序173
5.7.5運行結果178
5.8習題179第6章Linux系統調用182
6.1C庫函數和Linux系統調用182
6.2進程管理184
6.3進程間通信186
6.4exec函數族189
6.5文件管理192
6.6習題199第7章Socket編程201
7.1Socket基本概念201
7.1.1Socket簡介201
7.1.2網絡字節序與主機字節序202
7.1.3Socket地址結構203
7.1.4地址轉換函數205
7.1.5C/S架構206
7.2基于TCP的網絡程序207
7.2.1簡單C/S應用程序的設計207
7.2.2交互式C/S應用程序的設計213
7.2.3簡單聊天室應用程序的設計(select)215
7.2.4聊天室應用程序的設計(select)220
7.2.5簡單C/S應用程序的設計(epoll)228
7.3基于UDP的網絡程序233
7.3.1簡單C/S應用程序的設計233
7.3.2簡單聊天室應用程序的設計236
7.4原始套接字編程239
7.5UDS242
7.6習題244第8章Pthreads編程246
8.1Pthreads概述246
8.1.1Linux進程和線程246
8.1.2Linux線程模型247
8.1.3Pthreads簡介248
8.2Pthreads函數248
8.2.1創建線程248
8.2.2線程同步與互斥252
8.3Pthreads編程示例255
8.3.1讀者寫者255
8.3.2生產者消費者258
8.3.3哲學家就餐259
8.4習題261第9章GTK圖形界面編程263
9.1GTK簡介263
9.2GLib簡介264
9.3信號和回調函數264
9.4GTK控件267
9.4.1容器控件267
9.4.2非容器控件267
9.5GTK圖形界面編程268
9.5.1Hello World268
9.5.2GtkGrid270
9.5.3Custom Drawing271
9.5.4用GtkBuilder創建界面274
9.5.5Cambalache277
9.6GTK圖形界面聊天室280
9.6.1聊天室服務器端281
9.6.2聊天室客戶端285
9.6.3測試294
9.7習題295附錄ASCII碼表297參考文獻298
C程序設計(基于LINUX平臺)(微課版) 作者簡介
張同光,副教授,計算機博士,畢業于北京郵電大學。主要從事計算機方面的教學及科研工作,發表SCI、EI等學術論文30余篇,主編教材近20本,主持或參與省部級以上項目6個。對Linux操作系統有深入且全面的研究和應用。使用C/C 等語言開發過若干個橫向項目。講授過的計算機專業課程有:《Linux 0.11內核分析》、《Linux操作系統》、《嵌入式軟件開發基礎》、《Linux C編程》、《Linux網絡服務與編程》、《Linux驅動程序設計》、《嵌入式軟件開發高級》、《軟件工程》、《C 程序設計》、《微機原理》、《計算機網絡原理》、《計算機專業英語》、《操作系統原理》、《離散數學》、《計算機組成原理》、《單片機原理》、《C程序設計》、《數據結構》、《匯編語言》、《網絡安全技術》等。
- >
中國歷史的瞬間
- >
伊索寓言-世界文學名著典藏-全譯本
- >
莉莉和章魚
- >
自卑與超越
- >
隨園食單
- >
人文閱讀與收藏·良友文學叢書:一天的工作
- >
中國人在烏蘇里邊疆區:歷史與人類學概述
- >
名家帶你讀魯迅:故事新編