幫助中心 | 我的帳號 | 關於我們

Linux C語言程序設計(微課視頻版)/清華開發者學堂

  • 作者:編者:張同光|責編:張玥//常建麗
  • 出版社:清華大學
  • ISBN:9787302638766
  • 出版日期:2023/08/01
  • 裝幀:平裝
  • 頁數:336
人民幣:RMB 69.8 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書以「學完C語言之後知道能做什麼」為編寫目標,共12章:LinuxC語言程序設計、C語言基礎Ⅰ、C語言基礎Ⅱ、編譯與調試、鏈表、C標準庫、Linux系統調用、Socket編程、Linux函數庫和進程地址空間、Pthreads編程、GTK圖形界面編程、Linux內核編程。其中,C語言基礎Ⅰ、C語言基礎Ⅱ、C標準庫與Linux系統調用為本書最基礎、最重要的4章,全面介紹了標準C的基本語法和Linux系統調用編程。其他章節告訴讀者C語言具體能做什麼。
    本書可作為高等學校各專業的「C語言程序設計」課程教材,也可作為從事電腦相關工作的科技人員、電腦愛好者及各類自學人員的參考書。

作者介紹
編者:張同光|責編:張玥//常建麗
    張同光     電腦博士,副教授。講授電腦專業課程20余門,發表SCI、EI等學術論文30余篇,主編教材近20部,主持或參與省部級以上項目6個。對Linux操作系統有深入全面的研究。使用C/C++等語言開發過若干橫向項目。鑽研和應用電腦技術是最大的愛好。

目錄
第1章  Linux C語言程序設計
  1.1  C語言
    1.1.1  C語言簡介
    1.1.2  C語言的發展歷史
    1.1.3  C語言的特點
  1.2  Linux概述
  1.3  Linux C語言程序設計簡介
    1.3.1  Linux應用編程、系統編程和內核編程
    1.3.2  Linux圖形界面編程
  1.4  Linux C語言編程環境
    1.4.1  Ubuntu Linux虛擬機
    1.4.2  gedit、vim和nano
    1.4.3  C語言編譯器及集成開發環境
    1.4.4  Hello World程序
  1.5  習題
第2章  C語言基礎Ⅰ
  2.1  數據
    2.1.1  數據類型
    2.1.2  常量
    2.1.3  變數和標識符
    2.1.4  數據類型轉換
    2.1.5  轉義字元(轉義序列)
  2.2  運算符
    2.2.1  運算符和表達式
    2.2.2  算術運算
    2.2.3  賦值運算
    2.2.4  關係運算
    2.2.5  邏輯運算符
    2.2.6  條件運算符
    2.2.7  逗號運算符
    2.2.8  sizeof運算符與typedef類型聲明
    2.2.9  位運算
    2.2.10  複合賦值運算符
  2.3  結構化程序設計
    2.3.1  順序結構
    2.3.2  分支結構
    2.3.3  循環結構
  2.4  輸入/輸出
    2.4.1  標準輸出函數printf
    2.4.2  標準輸入函數scanf
  2.5  數組
    2.5.1  一維數組
    2.5.2  二維數組
    2.5.3  一維字元數組
    2.5.4  一維字元數組的輸入/輸出
    2.5.5  字元串處理函數
    2.5.6  二維字元數組
  2.6  習題
第3章  C語言基礎Ⅱ
  3.1  函數

    3.1.1  C語言庫函數
    3.1.2  函數定義和聲明
    3.1.3  函數調用及參數傳遞
    3.1.4  函數的嵌套與遞歸
    3.1.5  回調函數
    3.1.6  return語句
    3.1.7  全局變數、局部變數和作用域
    3.1.8  變數的存儲類別及生存期
    3.1.9  內部函數和外部函數
  3.2  預處理
    3.2.1  預處理的步驟
    3.2.2  宏定義和內聯函數
    3.2.3  條件編譯
    3.2.4  文件包含
  3.3  指針
    3.3.1  指針的基本運算
    3.3.2  指針與數組
    3.3.3  指針與const限定符
    3.3.4  指針與字元串
    3.3.5  指針函數與函數指針
    3.3.6  再講回調函數
    3.3.7  可變參數
    3.3.8  二級指針與多級指針
    3.3.9  指針數組和數組指針
    3.3.10  動態內存管理
  3.4  結構體、共用體和枚舉
    3.4.1  結構體
    3.4.2  位域
    3.4.3  共用體
    3.4.4  枚舉
  3.5  零長數組、變長數組和動態數組
  3.6  編碼風格與縮進工具indent
  3.7  習題
第4章  編譯與調試
  4.1  gcc、make、Makefile、cmake和CMakeLists.txt
    4.1.1  gcc
    4.1.2  make和Makefile
    4.1.3  cmake和CMakeLists.txt
  4.2  完整的編譯過程
  4.3  調試程序
    4.3.1  調試(Debug)和GDB
    4.3.2  測試用例
    4.3.3  GDB啟動程序
    4.3.4  斷點
    4.3.5  觀察點
    4.3.6  捕捉點
    4.3.7  信號
    4.3.8  單步調試
    4.3.9  列印輸出
    4.3.10  函數棧幀

    4.3.11  TUI窗口
    4.3.12  函數跳轉
    4.3.13  段錯誤
    4.3.14  coredump
    4.3.15  調試正在運行的程序
    4.3.16  調試多進程和多線程
    4.3.17  gdb使用示例
  4.4  習題
第5章  鏈表
  5.1  單向鏈表
    5.1.1  單鏈表結構與鏈表結點類型
    5.1.2  創建單鏈表
    5.1.3  插入結點
    5.1.4  刪除結點
    5.1.5  讀取結點
    5.1.6  查找結點
    5.1.7  列印單鏈表
    5.1.8  逆轉單鏈表
    5.1.9  構建單向循環鏈表
    5.1.10  銷毀單鏈表
    5.1.11  主函數及測試結果
  5.2  雙向鏈表
    5.2.1  雙鏈表結構與鏈表結點類型
    5.2.2  創建雙鏈表
    5.2.3  插入結點
    5.2.4  刪除結點
    5.2.5  讀取結點
    5.2.6  查找結點
    5.2.7  列印雙鏈表
    5.2.8  逆轉雙鏈表
    5.2.9  構建雙向循環鏈表
    5.2.10  銷毀雙向循環鏈表
    5.2.11  主函數及測試結果
  5.3  內核鏈表
    5.3.1  list_head
    5.3.2  offsetof、container_of和list_entry
    5.3.3  鏈表初始化
    5.3.4  插入結點
    5.3.5  刪除結點
    5.3.6  替換結點
    5.3.7  移動結點
    5.3.8  判斷函數
    5.3.9  合併結點
    5.3.10  遍歷鏈表
    5.3.11  用戶空間使用內核鏈表
  5.4  習題
第6章  C標準庫
  6.1  C語言標準和glibc
  6.2  標準輸入/輸出函數庫
    6.2.1  fopen/fclose

    6.2.2  stdin/stdout/stderr
    6.2.3  errno與perror函數
    6.2.4  以位元組為單位的I/O函數
    6.2.5  以字元串為單位的I/O函數
    6.2.6  以記錄為單位的I/O函數
    6.2.7  格式化讀寫文件
    6.2.8  操作讀寫位置的函數
    6.2.9  FILE結構體及I/O緩衝區
  6.3  標準工具函數庫
    6.3.1  動態內存分配與釋放
    6.3.2  整數算術
    6.3.3  隨機數
    6.3.4  數值字元串轉換
    6.3.5  寬字元和多位元組字元轉換
  6.4  字元串處理函數庫
    6.4.1  內存賦值
    6.4.2  取字元串的長度
    6.4.3  複製字元串
    6.4.4  比較字元串
    6.4.5  搜索字元串
    6.4.6  連接字元串
    6.4.7  分割字元串
    6.4.8  本地函數
  6.5  字元處理函數庫
  6.6  數學函數庫
  6.7  學生信息管理系統的設計與實現
    6.7.1  系統設計要求
    6.7.2  系統設計
    6.7.3  函數設計
    6.7.4  參考程序
    6.7.5  運行結果
  6.8  習題
第7章  Linux系統調用
  7.1  C庫函數和Linux系統調用
  7.2  Linux中使用系統調用的三種方法
    7.2.1  通過glibc封裝的庫函數
    7.2.2  使用syscall直接調用
    7.2.3  通過CPU指令調用
  7.3  Linux系統調用編程: 進程管理
  7.4  Linux系統調用編程: 進程間通信
  7.5  Linux系統調用編程: exec函數族
  7.6  Linux系統調用編程: 文件管理
  7.7  習題
第8章  Socket編程
  8.1  Socket基本概念
    8.1.1  Socket是什麼
    8.1.2  主機位元組序與網路位元組序
    8.1.3  Socket地址結構
    8.1.4  地址轉換函數
    8.1.5  C/S架構

  8.2  Socket相關函數
    8.2.1  socket函數
    8.2.2  bind函數
    8.2.3  listen/connect函數
    8.2.4  accept函數
    8.2.5  網路I/O函數
    8.2.6  close函數
    8.2.7  getsockopt和setsockopt函數
    8.2.8  select函數
    8.2.9  poll函數
    8.2.10  epoll函數
  8.3  基於TCP的網路程序
    8.3.1  簡單C/S應用程序的設計
    8.3.2  互動式C/S應用程序的設計
    8.3.3  簡單聊天室應用程序的設計(select)
    8.3.4  聊天室應用程序的設計(select)
    8.3.5  簡單C/S應用程序的設計(epoll)
  8.4  基於UDP的網路程序
    8.4.1  簡單C/S應用程序的設計
    8.4.2  簡單聊天室應用程序的設計
  8.5  原始套接字編程
  8.6  UNIX Domain Socket
  8.7  習題
第9章  Linux函數庫和進程地址空間
  9.1  靜態庫和共享庫
  9.2  函數庫的製作和使用
    9.2.1  靜態庫的製作和使用
    9.2.2  共享庫的製作和使用
  9.3  顯式鏈接共享庫
  9.4  進程地址空間
    9.4.13  2位系統的進程地址空間
    9.4.26  4位系統的進程地址空間
    9.4.3  查看進程地址空間
    9.4.4  編程驗證進程地址空間布局
  9.5  動態鏈接過程
    9.5.1  ELF文件格式
    9.5.2  載入解釋器
    9.5.3  運行解釋器
  9.6  習題
第10章  Pthreads編程
  10.1  Pthreads概述
    10.1.1  Linux進程和線程
    10.1.2  Linux線程模型
    10.1.3  Pthreads簡介
  10.2  Pthreads函數
    10.2.1  創建線程
    10.2.2  終止線程
    10.2.3  線程的結合和分離
    10.2.4  線程屬性
    10.2.5  自動清理線程資源

    10.2.6  線程同步與互斥
  10.3  Pthreads編程示例
    10.3.1  讀者寫者
    10.3.2  生產者消費者
    10.3.3  哲學家就餐
  10.4  習題
第11章  GTK圖形界面編程
  11.1  GTK概述
  11.2  GLib概述
  11.3  信號和回調函數
  11.4  GTK控制項
    11.4.1  非容器控制項
    11.4.2  容器控制項
  11.5  GTK圖形界面編程
    11.5.1  Hello World
    11.5.2  GtkGrid
    11.5.3  Custom Drawing
    11.5.4  GtkBuilder創建界面
    11.5.5  Cambalache
  11.6  GTK圖形界面聊天室
    11.6.1  聊天室伺服器端
    11.6.2  聊天室客戶端
    11.6.3  測試
  11.7  習題
第12章  Linux內核編程
  12.1  Linux內核編程概念
  12.2  LKM編程: Hello World
    12.2.1  LKM簽名驗證
    12.2.2  Hello World模塊的編寫和運行
    12.2.3  模塊參數和模塊導出符號
  12.3  Linux驅動程序設計
    12.3.1  Linux驅動程序簡介
    12.3.2  字元設備驅動程序
    12.3.3  虛擬網卡驅動程序
  12.4  習題
附錄A  ASCII碼表
附錄B  資源及學習網站
參考文獻

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032