王者歸來:Linux C系統整合開發設計[第四版]
內容簡介
	隨著電腦技術的高速發展,Linux系統在伺服器解決方案中的優勢越來越被開發者認同。在電腦就業市場上,基於Linux系統開發的人員需求量也不斷增加。其中,對Linux系統環境下C語言開發人員的需求尤為明顯。由於C語言本身在語法結構、語言風格和程式設計思想上的特點,使C語言一直被公認為難以學習、輕鬆掌握。
	
	儘管Linux環境下C語言開發越來越被企業和開發人員認同,關心的人數也越來越多,但實際上,真正了解和掌握C語言開發的人卻很少。因此,筆者總結親身學習Linux系統函數介面的經驗,並結合自己多年從事Linux 環境下C語言應用程式開發的經驗,撰寫出這本能夠真正讓開發者掌握Linux環境下C語言程式設計技巧的書。在這本書中,
	
	本書從實際開發者的角度全面介紹Linux環境下C語言程式設計的基礎知識,涉及Linux系統函數的各個面向,選擇目前最熱門、應用最廣的技術進行深入討論。筆者透過28章的學習規劃,讓讀者快速掌握Linux環境下C語言程式設計的基本知識和程式設計技巧。每個核心概念都使用通俗的語言進行解釋,透過實例讓讀者更直觀地掌握概念的含義,達到靈活使用Linux系統函數介面撰寫程式的目的。
目錄
	前言
	
	第一部分 Linux下c語言基礎
	第1 章 Linux 簡介
	1.1 GNU 簡介  
	1.2 Linux 簡介  
	1.3 Linux 環境下的其他程式設計語言  
	第2 章控制結構
	2.1 goto 敘述  
	2.2 C 語言中的分支結構
	2.3 逐位元運算
	2.4 C 語言中的迴圈結構  
	2.5 switch 敘述  
	2.6 最佳化控制結構
	2.7 本章小結
	第3 章 C語言中的函數
	3.1 函數的本質  
	3.2 變數的作用域和生命期
	3.3 變數的初值  
	3.4 與函數有關的最佳化  
	3.5 撰寫多檔案程式--變數的儲存類別
	3.6 撰寫多檔案的程式--連結的作用  
	3.7 可變參數  
	第4 章C語言中的指標與字串
	4.1 sizeof 運算子
	4.2 指標的應用
	4.3 函數的指標  
	4.4 字串  
	第5 章 C語言的高級技術
	5.1 結構體與共同體  
	5.2 位元運算
	5.3 預先處理  
	5.4 C99 新標準關鍵字詳解
	
	第二部分 C語言開發環境
	第6 章 vi 與vim 編輯器
	6.1 vi 編輯器入門  
	6.2 vi 一般操作  
	6.3 vi 的增強操作
	第7 章 gcc 編譯器
	7.1 初探gcc 編譯器  
	7.2 gcc 常用選項
	7.3 連結原理  
	7.4 關於程式庫  
	7.5 gcc 工具鏈
	第8 章 makefile
	8.1 makefile 檔案入門
	8.2 書寫makefile 規則
	8.3 使用指令
	8.4 使用變數  
	8.5 使用條件判斷  
	8.6 使用函數  
	8.7 makefile 實例
	第9 章 gdb
	9.1 列出來源程式
	9.2 執行程式的指令  
	9.3 操作中斷點的指令
	9.4 檢視執行時資料  
	9.5 改變程式的執行
	9.6 gdb 高級應用
	
	第三部分 Linux 執行緒操作
	第10 章 執行緒環境
	10.1 程式的啟動和退出  
	10.2 Linux 執行緒記憶體管理
	10.3 shell 環境
	10.4 全域跳躍  
	10.5 本章小結
	第11 章 執行緒環境
	11.1 執行緒識別字
	11.2 執行緒操作
	11.3 執行程式  
	11.4 關係操作
	第12 章 時間和日曆歷程
	12.1 系統時間  
	12.2 日曆時間
	第13 章 訊號及訊號處理
	13.1 訊號的基礎  
	13.2 訊號的影響
	13.3 訊號處理函數
	13.4 訊號集與遮罩訊號  
	第14 章 執行緒間通訊
	14.1 執行緒間通訊概述  
	14.2 管線  
	14.3 FIFO 管線
	14.4 System V IPC/POSIX IPC
	14.5 共用記憶體  
	14.6 訊號量  
	14.7 訊息佇列  
	第15 章 執行緒
	15.1 執行緒與處理程序
	15.2 執行緒識別字
	15.3 執行緒基本操作  
	第16 章 執行緒高級操作
	16.1 執行緒同步--使用互斥量
	16.2 執行緒同步--使用讀寫入鎖
	16.3 執行緒屬性
	
	第四部分 Linux檔案操作
	第17 章 檔案I/O15 執行緒
	17.1 檔案描述符號的概念
	17.2 檔案I/O 操作  
	17.3 檔案描述符號操作
	17.4 非阻塞檔案I/O  
	17.5 記憶體映射I/O
	第18 章 檔案管理
	18.1 檔案狀態
	18.2 檔案類型  
	18.3 檔案權限  
	18.4 檔案許可權操作
	18.5 檔案系統結構  
	18.6 檔案的硬連結  
	18.7 改變檔案所有者
	18.8 操作檔案的時間
	第19 章 目錄操作
	19.1 目錄的許可權
	19.2 目錄操作  
	19.3 處理程序的工作目錄
	第20 章 特殊檔案
	20.1 符號連結操作
	20.2 proc 檔案系統  
	第21 章 基於串流的I/O
	21.1 串流與緩衝  
	21.2 基於串流的檔案操作  
	
	第五部分 Linux網絡編程
	第22 章 TCP 和UDP 協定
	22.1 電腦網路的體系結構簡介
	22.2 Client/Server 方式簡介  
	22.3 使用者資料封包通訊協定UDP  
	22.4 傳輸控制協定 TCP  
	第23 章 網路程式設計基礎
	23.1 通訊端概念
	23.2 準備工作  
	23.3 通訊端基礎程式設計  
	23.4 非阻塞通訊端  
	第24 章 網路程式設計進階
	24.1 通訊端程式設計深入  
	24.2 多路選擇I/O
	24.3 非網路通訊通訊端
	第25 章 網路程式設計實例--實現檔案傳輸程式
	25.1 程式設計  
	25.2 檔案傳輸程式的實現
	25.3 測試和驗證
	第26章  網路程式設計實例--簡單的Web 伺服器
	26.1 程式設計  
	26.2 Web 伺服器的實現
	26.3 測試和驗證
	
	第六部分 shell 指令稿知識
	第27 章 shell 指令稿基礎
	27.1 撰寫最簡單的shell 指令稿
	27.2 shell 中的變數  
	27.3 退出狀態  
	27.4 條件測試  
	第28 章 shell 指令稿中的控制結構
	28.1 shell 指令稿中的指令替換  
	28.2 分支結構
	28.3 條件測試指令的值
	28.4 循環結構  
	28.5 定義函數和使用函數
序/導讀
	前言
	
	隨著電腦技術的高速發展,Linux 系統在伺服器解決方案中的優勢越來越被開發者認同。在電腦就業市場上,基於Linux 系統開發的人員需求量也不斷增加。其中,對Linux系統環境下C 語言開發人員的需求尤為明顯。由於C 語言本身在語法結構、語言風格和程式設計思想上的特點,使C 語言一直被公認為難以學習、輕鬆掌握。
	
	儘管Linux 環境下C 語言開發越來越被企業和開發人員認同,關心的人數也越來越多,但實際上,真正了解和掌握C 語言開發的人卻很少。因此,筆者總結親身學習Linux系統函數介面的經驗,並結合自己多年從事Linux 環境下C 語言應用程式開發的經驗,撰寫出這本能夠真正讓開發者掌握Linux 環境下C 語言程式設計技巧的書。在這本書中,筆者將透過28 章的學習規劃,讓讀者快速掌握Linux 環境下C 語言程式設計的基本知識和程式設計技巧。
	
	本書特色
	
	相比同類圖書,本書具有以下明顯特色。
	
	1.技術紮實,內容突出
	本書從實際開發者的角度全面地介紹了Linux 環境下C 語言程式設計的基礎知識。本書涉及了Linux 系統函數的各個方面,選擇了目前最熱門、應用最廣的技術進行了深入的討論。
	
	2.概念準確,了解深刻
	在本書中,對每個核心的概念都使用通俗形象的語言進行解釋,對於很多關鍵概念,還配有相關插圖,讓讀者更加直觀地掌握概念的含義。同時,鑑於廣大的開發者對Windows 比較熟悉,本書在多處概念講解中,將其和Windows 系統開發中相關的概念進行比較講解,來加深讀者對Linux 開發的了解。
	
	3.實例豐富,強調實作
	為了讓讀者易於掌握Linux 環境下C 語言程式設計的技巧,本書列出了大量實例進行講解,透過這些實例,讀者可以更加深入地了解相關概念,從而達到靈活使用Linux 系統函數介面撰寫程式的目的。另外,本書重點強調實作性,本書中的很多例子都來源於作者的實際開發,大多數實例都是一些實際專案中截取的一部分子功能。透過對這些例子的學習,可以增強讀者的動手實作能力。
	
	4.程式碼標準,註釋詳細
	為了讓讀者了解Linux 環境下開發的要求,本書在講解程式碼時,十分注意程式碼標準。同時,所有的程式碼都取自實際開發經驗,符合標準。為了幫助讀者了解程式碼含義,本書對程式碼進行了詳細的註釋,讀者可以透過註釋十分便利地了解程式碼的結構和流程。
	
	本書內容
	
	本書共分為6 篇,循序漸進地講述了Linux 環境下C 語言的程式設計技術,從基本概念到實際實作、從系統函數介面的認識到實際操作等全方位的知識。
	
	第1 篇(第1 ∼ 5 章)簡單介紹了Linux 的發展歷史、發展方向以及Linux 環境下的一些常用的開發語言。同時還介紹了C 語言中的重點和困難。在本篇跨過C 語言的基礎部分,對C 語言的困難和在現實開發過程中容易出錯的部分進行了深入講解,並且配以大量的實例。
	
	第2 篇(第6 ∼ 9 章)講述了Linux 作業系統中的C 語言開發環境。在本篇中詳細介紹了Linux 環境下的開發工具,同時為了使讀者了解透徹,還舉了對應的實例,供讀者參考、模擬、實作。
	
	第3 篇(第10 ∼ 16 章)講述了Linux 環境下和處理程序有關的操作,包括Linux 作業系統中處理程序執行的環境、Linux 作業系統中對處理程序的控制、Linux 環境下處理程序之間的通訊方法以及執行緒的相關操作。
	
	第4 篇(第17 ∼ 21 章)介紹了Linux 環境下和檔案有關的操作,包括Linux 作業系統中讀寫檔案的I/O、檔案系統的結構與組織、Linux 中的特殊檔案的使用以及Linux 環境下基於串流的I/O。
	
	第5 篇(第22 ∼ 26 章)專門介紹Linux 環境下的網路程式設計。透過對網路基礎協定、Linux 網路的程式設計基礎操作以及兩個網路應用程式實例的講解,使讀者理清Linux 環境下網路的流程。
	
	第6 篇(第27 ∼ 28 章)介紹Linux 環境下的shell 指令稿。透過對撰寫shell 指令稿基礎知識的闡述,使讀者基本掌握這門和C 語言配合的最好的指令碼語言。
	
	閱讀本書建議
	
	為了提昇讀者學習效率,增強學習效果,特別提出以下學習建議。
	
	◎在本書中,為了幫助讀者了解概念,多次使用了圖示的方法來講解概念。請讀者認真檢視這些示意圖,這樣可以幫助讀者更加深刻地了解概念。
	◎本書的所有實例都有實際開發背景,所以,請讀者親自完成書中的實例,這樣才能身臨其境地感受到實際專案對開發者的要求。
	◎注重技術交流。Linux 本身就是開放原始碼的系統,從誕生之日起,就和技術交流密切相關。根據筆者的經驗,技術交流和網路資源對開發者而言,是至關重要的。希望讀者一開始就能注意到技術交流的重要性。
	
	本書目標讀者
	◎ Linux 環境下C 語言程式設計的初學者。
	◎ Linux 系統函數介面的研究人員。
	◎ Linux 伺服器程式的開發人員。
	◎嵌入式Linux 程式的開發人員。
	◎ Linux 桌面應用的開發人員。
	◎需要在Linux 環境下進行畢業設計的電腦學員。
	◎想了解Linux 環境下C 語言程式設計的其他人員。
配送方式
- 
                                    台灣
- 國內宅配:本島、離島
 - 
                                                到店取貨:
不限金額免運費
                                                        
                                                        
                                                 
 - 
                                    海外
- 國際快遞:全球
 - 
                                                港澳店取:
                                                    
                                                     
 
訂購/退換貨須知
退換貨須知:
**提醒您,鑑賞期不等於試用期,退回商品須為全新狀態**
- 
								依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,以下商品購買後,除商品本身有瑕疵外,將不提供7天的猶豫期:
								
- 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮食品)
 - 依消費者要求所為之客製化給付。(客製化商品)
 - 報紙、期刊或雜誌。(含MOOK、外文雜誌)
 - 經消費者拆封之影音商品或電腦軟體。
 - 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等)
 - 已拆封之個人衛生用品。(如:內衣褲、刮鬍刀、除毛刀…等)
 
 - 若非上列種類商品,均享有到貨7天的猶豫期(含例假日)。
 - 辦理退換貨時,商品(組合商品恕無法接受單獨退貨)必須是您收到商品時的原始狀態(包含商品本體、配件、贈品、保證書、所有附隨資料文件及原廠內外包裝…等),請勿直接使用原廠包裝寄送,或於原廠包裝上黏貼紙張或書寫文字。
 - 退回商品若無法回復原狀,將請您負擔回復原狀所需費用,嚴重時將影響您的退貨權益。
 
    
        
                  
                
                  
                  
                  
                  
                  
                  
                  
		


商品評價