Linux環境下C程序設計( 簡體 字) | |
作者:黃繼海 石彥華 | 類別:1. -> 程式設計 -> C -> C |
出版社:人民郵電出版社 | 3dWoo書號: 54188 詢問書籍請說出此書號! 有庫存 NT售價: 300 元 |
出版日:3/1/2021 | |
頁數:250 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787115506740 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第 一章Linux操作系統基礎 1
1.1 GNU簡介 1 1.2 Linux簡介 1 1.2.1 Linux的內核與發行版 2 1.2.2 Linux系統的特點 3 1.3 Shell命令概述 4 1.3.1 目錄的組織結構 4 1.3.2用戶主目錄和文件的路徑 5 1.3.3 Linux命令的語法結構 6 1.3.4 Shell命令的分類 6 1.3.5 聯機幫助 6 1.4 文件與目錄操作 7 1.4.1目錄操作 7 1.4.2 文件/目錄的創建 10 1.4.3 文件/目錄的刪除 12 1.4.4 文件/目錄的復制 13 1.4.5 文件/目錄的屬性修改 15 1.5 系統運行常用命令 21 1.5.1 進程操作 21 1.5.2 管道和重定向 23 1.6 查找操作命令 25 1.6.1 grep 25 1.6.2 find 25 1.7 其他常用命令 27 1.7.1 文件系統操作 27 1.7.2 用戶管理 32 1.7.3 網絡相關命令 41 1.8 Linux應用軟件包管理 42 1.8.1應用軟件包的分類 42 1.8.2 RPM軟件包的管理 42 1.9 項目實訓一:linux基本命令 43 1.10 本章小結 45 1.11習題一 46 第 2章 常用的C語言庫函數 48 2.1 字符和字符串操作函數 48 2.1.1 字符操作函數 48 2.1.2 字符串操作函數 51 2.2 內存管理函數 64 2.2.1 動態內存分配函數 64 2.2.2 動態內存釋放函數 67 2.2.3 memset函數 69 2.2.4 memcpy函數 69 2.2.5 memmove函數 70 2.3 日期與時間函數 76 2.3.1 time函數 76 2.3.2 localtime函數和gmtime 函數 76 2.3.3 asctime函數和ctime函數 78 2.4 隨機函數 79 2.4.1 rand函數 79 2.4.2 srand函數 80 2.4.3 random函數和srandom函數 81 2.4.4 drand48函數和erand48函數 82 2.5 項目實訓 83 2.6 本章小結 90 習題 90 第3章 編程環境 91 3.1概述 91 3.2 VIM編輯器 92 3.2.1 VIM工作模式 92 3.2.2 VIM操作流程 93 3.2.3 VIM常用命令 94 3.3 GCC編譯器 97 3.3.1 GCC編譯器簡介 97 3.3.2 GCC編譯過程 98 3.3.3 GCC常用選項介紹 100 3.2.4 庫依賴原理 104 3.4 GDB程序調試器 105 3.4.1 在程序中加入調試信息 106 3.4.2 啟動和退出GDB調試器 106 3.4.3 顯示和查找程序源代碼 107 3.4.4設置和管理斷點 108 3.4.5 執行程序和獲得幫助 108 3.4.6控制程序的執行 109 3.4.7查看和設置變量的值 109 3.5 Make工程管理器 110 3.5.1 Make工程管理概述 110 3.5.2 Makefile基本結構 111 3.5.3 Makefile變量 117 3.5.4 Makefile規則 119 3.6 項目實訓:Makefile的編寫 121 3.6.1實訓描述 121 3.6.2編寫流程 123 3.6.3 Make腳本的測試 125 3.7 本章小結 125 習題 125 第四章 文件操作 128 4.1 文件系統 128 4.1.1超級塊 129 4.1.2索引節點 129 4.2 基于文件描述符的I/O 操作 129 4.2.1 文件的創建、打開與關閉 130 4.2.2 文件的讀寫操作 132 4.2.3 文件的定位 134 4.2.4 文件屬性的修改 136 4.2.5 目錄文件的操作 138 4.3項目實訓四:日志管理功能 139 4.3.1實訓描述 139 4.3.2實訓要求 139 4.3.3實訓參考 139 4.4 本章小結 141 4.5 習題四 141 第五章 標準I/O庫 143 5.1 標準流的I/O 操作 143 5.2 流的打開和關閉 143 5.3 緩沖區的操作 144 5.4 直接輸入輸出 145 5.5 格式化輸入輸出 148 5.6 基于字符和行的輸入輸出 151 1.7 項目實訓五:出錯管理功能 154 5.7.1項目描述 154 5.7.2項目要求 154 5.7.3 實訓參考 155 5.8 本章小結 156 5.9 習題五 156 第六章 進程控制 157 6.1 進程概述 157 6.1.1什么是進程 157 6.1.2進程狀態 158 6.1.3 Linux進程環境 158 6.1.4進程的內存映像 159 6.2 進程控制 160 6.2.1 進程創建 160 6.2.2 進程等待 163 6.2.3 結束進程 165 6.2.4 system函數 169 6.3 項目實訓六:進程的實現 170 6.3.1實訓描述 170 6.3.2參考代碼 170 6.3.3編譯運行 171 6.4 本章小結 171 6.5 習題六 172 第七章 線程控制 173 7.1 線程控制 173 7.1.1 線程的創建 173 7.1.2 線程的終止 175 7.1.3 線程的同步 177 7.1.4 私有數據 182 7.2 項目實訓七:線程的實現 185 7.2.1實訓描述 185 7.2.2參考代碼 185 7.2.3編譯 186 7.3 本章小結 186 7.4 習題七 187 第八章 進程間通信 188 8.1 概述 188 8.2 共享內存 189 8.3 信號量 194 8.4 管道通信 201 8.4.1 管道的創建和關閉 201 8.4.2 管道的讀寫操作 201 8.5 命名管道 204 8.5.1 命名管道的創建 204 8.5.2 命名管道的使用 205 8.6 消息隊列 209 8.6.1 消息隊列的創建與打開 210 8.6.2 向消息隊列中發送消息 211 8.6.3 從消息隊列中接收消息 211 8.6.4 消息隊列的控制 212 8.6.5 綜合示例 212 8.7 項目實訓八:進程之間通信功能的實現 218 8.7.1實訓描述 218 8.7.2參考代碼 218 8.7.3編譯運行 219 8.8 本章小結 220 8.9 習題八 220 第九章 信號及信號處理 221 9.1 信號及其使用 221 9.1.1 Linux信號的產生 221 9.1.2信號的種類 221 9.1.3對信號的響應 224 9.2 信號處理 224 9.2.1信號的捕獲與處理 224 9.2.2信號的屏蔽 225 9.2.3信號的發送 228 9.3 本章小結 230 9.4 項目實訓:信號的處理 230 9.4.1實訓描述 230 9.4.2參考代碼 230 9.4.3編譯運行 232 9.5 習題九 233 第十章 網絡編程 234 10.1 網絡編程的基本概念 234 10.1.1 IP地址 234 10.1.2 端口 234 10.1.3 域名 235 10.1.4 TCP和UDP 235 10.2 網絡編程基礎 235 10.2.1套接字的概念 235 10.2.3 Socket地址結構 236 10.3網絡地址的轉換 237 10.3.1主機字節序與網絡字節序 237 10.3.2字節處理函數 238 10.3.3地址轉換函數 238 10.3.4域名與IP地址轉換 239 10.3 TCP通信編程 242 10.3.1 TCP通信原理 242 10.3.2 創建套接字 243 10.3.3 綁定套接字 244 10.3.4 在套接字上監聽 244 10.3.5 接受連接 244 10.3.6 建立連接 245 10.3.7 數據通信 245 10.3.8 關閉連接 246 10.3.9 基于TCP套接口編程示例 246 10.4 UDP通信編程 251 10.4.1 UDP通信原理 251 10.4.2 數據通信 252 10.4.3 基于UDP套接口編程示例 253 10.5 本章小結 257 10.6 項目實訓:局域網文件下載 257 10.6.1實訓描述 257 10.6.2參考代碼 257 10.6.3編譯運行 262 10.7 習題十 263 第十一章 Gtk+圖形界面編程 264 11.1 Linux圖形界面開發 264 1.1.1 Linux圖形用戶環境 264 1.1.2 Gtk+簡介 265 11.2 Gtk+程序結構 265 11.2.1 第 一個Gtk+程序 265 11.2.2 GTK+的數據類型 266 11.2.3 初始化GTK+ 266 11.2.4 創建和顯示窗口/構件 267 11.2.5 GTK+的主循環 267 11.3 基本控件 268 11.3.1窗口 268 11.3.2標簽 271 11.3.3按鈕 273 11.3.4文本框 275 11.4 布局控件 276 11.4.1表格 276 11.4.2框 279 11.5 信號與事件 282 11.6常用控件 285 11.6.1下拉菜單 285 11.6.2 對話框 288 11.6 項目實訓:貪吃蛇游戲 290 11.6.1任務描述 290 11.6.2設計思路 290 11.6.3模塊結構 290 11.6.4界面設計 291 11.6.5設計描述 292 11.6.7游戲測試 298 11.6.8設計總結 299 11.7 本章小結 299 11.8 習題十一 299 本書由淺入深,全面細致地講述了Linux環境C程序設計,從基本概念到實際操作,從原理到具體實踐,涵蓋了Linux環境下C程序設計的所有重要知識點。第1章介紹Linux操作系統的基本知識和Linux常用命令;第2章介紹常用C語言庫函數;第3章介紹Linux的開發環境;第4章至第9章介紹Linux系統編程,包括文件I/O、標準I/O庫、進程和信號以及進程間通信等方面的知識;第10章介紹網絡編程;第11章介紹GTK+編程。
|