出版時(shí)間:2009-7 出版社:清華大學(xué)出版社 作者:劉學(xué)勇,陳建偉 編著 頁(yè)數(shù):465
Tag標(biāo)簽:無(wú)
前言
Linux是當(dāng)前最流行的操作系統(tǒng)之一。它是由芬蘭大學(xué)生Linus開(kāi)發(fā)的類(lèi)Linix操作系統(tǒng),它具有系統(tǒng)內(nèi)核小、穩(wěn)定性高、可擴(kuò)展性好、對(duì)硬件要求低、網(wǎng)絡(luò)功能強(qiáng)等特點(diǎn),現(xiàn)在已經(jīng)成為成熟的操作系統(tǒng),并以其良好的穩(wěn)定性和優(yōu)異的性能給用戶帶來(lái)了全新的感受,贏得了人們的普遍青睞?! 語(yǔ)言原是AT&T屬下的BellLabs的DennisRitchie為開(kāi)發(fā)UNIX操作系統(tǒng)而獨(dú)立設(shè)計(jì)并實(shí)現(xiàn)的。隨著uNIX操作系統(tǒng)的廣泛流行及微型計(jì)算機(jī)的普及推廣,C語(yǔ)言作為Unix操作系統(tǒng)的孿生兄弟,也廣泛地應(yīng)用于軟件開(kāi)發(fā)領(lǐng)域。它的簡(jiǎn)潔、高效、可移植性等眾多優(yōu)點(diǎn)受到軟件開(kāi)發(fā)人員的喜愛(ài),成為最受歡迎的編程語(yǔ)言。 Linux操作系統(tǒng)同C這種具有多平臺(tái)、移植性好的編程語(yǔ)言的完美結(jié)合,為用戶提供了一個(gè)功能強(qiáng)大的編程環(huán)境。掌握Linux下的c語(yǔ)言編程是學(xué)習(xí)Linux下編程必不可少的一環(huán),本書(shū)正是以此為出發(fā)點(diǎn),介紹Linux系統(tǒng)下進(jìn)行C語(yǔ)言編程的有關(guān)知識(shí)?! ”緯?shū)主要針對(duì)那些對(duì)Linux和C語(yǔ)言有一定了解,想學(xué)習(xí)如何在Linux系統(tǒng)中使用C語(yǔ)言編程的讀者。
內(nèi)容概要
本書(shū)系統(tǒng)地介紹了在Linux操作系統(tǒng)下用C語(yǔ)言進(jìn)行程序設(shè)計(jì)的方法,并通過(guò)列舉大量的程序?qū)嵗?,使讀者很快地掌握在Linux操作系統(tǒng)下進(jìn)行C程序開(kāi)發(fā)的方法和技巧,培養(yǎng)開(kāi)發(fā)大型應(yīng)用程序的能力。 本書(shū)內(nèi)容主要包括Linux基礎(chǔ)知識(shí)介紹,Linux下的C語(yǔ)言編譯器、調(diào)試器和程序維護(hù)工具的使用方法,Linux下通過(guò)c語(yǔ)言進(jìn)行文件操作和目錄操作的方法,標(biāo)準(zhǔn)I/O庫(kù)函數(shù),進(jìn)程概念、進(jìn)程操作以及進(jìn)程間通信的方法,線程操作,用c語(yǔ)言進(jìn)行網(wǎng)絡(luò)編程、數(shù)據(jù)庫(kù)編程以及GUI編程的方法等。最后通過(guò)一個(gè)飛機(jī)票網(wǎng)絡(luò)售票系統(tǒng)的模擬程序演示了Linux C項(xiàng)目開(kāi)發(fā)的方法和流程。 本書(shū)結(jié)構(gòu)合理、概念清晰、深入淺出、易于理解,具有很強(qiáng)的實(shí)用性,適用于想要系統(tǒng)地學(xué)習(xí)在Linux系統(tǒng)下進(jìn)行C語(yǔ)言編程的初級(jí)和中級(jí)讀者閱讀,也可作為高等院校計(jì)算機(jī)相關(guān)專(zhuān)業(yè)的教材。
書(shū)籍目錄
第1章 Linux基礎(chǔ)知識(shí) 1.1 Linux簡(jiǎn)介 1.1.1 Linux的起源 1.1.2 Linux的特點(diǎn) 1.1.3 Linux的版本 1.1.4 Linux的發(fā)展前景 1.2 Linux的安裝 1.2.1 發(fā)行版本的選擇 1.2.2 基本的硬件要求 1.2.3 安裝步驟 1.3 Linux系統(tǒng)的常用命令 1.3.1 了解Shell 1.3.2 進(jìn)入Shell命令行界面” 1.3.3 文件操作命令 1.3.4 目錄及其操作命令 1.3.5 文件壓縮命令 1.3.6 聯(lián)機(jī)幫助命令 1.3.7 用戶操作命令 1.3.8 關(guān)機(jī)和重啟計(jì)算機(jī)命令 1.4 小結(jié) 習(xí)題第2章 Linux下的C語(yǔ)言編程環(huán)境 2.1 Linux編程簡(jiǎn)介 2.2 Linux下的C語(yǔ)言開(kāi)發(fā)環(huán)境 2.3 編輯器的使用 2.3.1 vi的使用 2.3.2 Emacs的使用 2.4 編譯器gcc的使用 2.4.1 Ubuntu下gcc的安裝與設(shè)置 2.4.2 9cc的使用 2.5 Linux C程序的開(kāi)發(fā)過(guò)程 2.5.1 編輯程序 2.5.2 編譯程序 2.6 make工具及其使用 2.6.1 make命令和Makefile 2.6.2 Makefile的規(guī)則 2.6.3 Makefile中的變量 2.6.4 偽目標(biāo) 2.6.5 條件語(yǔ)句 2.6.6 調(diào)試make 2.7 使用autoconf 2.7.1 創(chuàng)建configure腳本 2.7.2 編寫(xiě)configure.in文件 2.7.3 使用autoscan創(chuàng)建configure.in文件 2.7.4 用autoconf倉(cāng)J建configure 2.7.5 更新configure腳本 2.8 使用automake 2.8.1 automake的工作流程 2.8.2 使用automake生成Makefile.in 2.9 使用gdb調(diào)試程序 2.9.1 初次使用gdb 2.9.2 gdb的基本命令 2.9.3 gdb的調(diào)用 2.9.4 gdb運(yùn)行模式的選擇 2.10 小結(jié) 習(xí)題第3章 Linux下的文件編程 3.1 概述 3.1.1 超級(jí)塊 3.1.2 索引節(jié)點(diǎn)(inode) 3.1.3 文件類(lèi)型 3.2 文件描述符 3.3 基本文件I/O操作 3.3.1 Open函數(shù) 3.3.2 close函數(shù) 3.3.3 read函數(shù) 3.3.4 write函數(shù) 3.3.5 creat函數(shù) 3.3.6 lseek函數(shù) 3.4 文件高級(jí)操作 3.4.1 文件模式 3.4.2 確定和改變文件模式 3.4.3 查詢文件信息 3.4.4 文件其他操作 3.4.5 目錄文件操作 3.4.6 特殊文件操作 3.5 小結(jié) 習(xí)題第4章 標(biāo)準(zhǔn)I/O庫(kù) 4.1 概述 4.2 流和FILE對(duì)象 4.3 打開(kāi)和關(guān)閉流 4.4 讀和寫(xiě)流 4.4.1 字符I/O 4.4.2 行I/O 4.4.3 塊I/O 4.5 流文件定位 4.6 文件結(jié)束和錯(cuò)誤 4.7 流緩沖 4.8 格式化I/O 4.8.1 格式輸出 4.8.2 格式輸入 4.9 臨時(shí)文件 4.10 小結(jié) 習(xí)題第5章 進(jìn)程操作 5.1 進(jìn)程概述 5.1.1 進(jìn)程的基本概念 5.1.2 Linux進(jìn)程 5.1.3 進(jìn)程的識(shí)別號(hào)(ID) 5.1.4 進(jìn)程調(diào)度 5.2 進(jìn)程控制 5.2.1 進(jìn)程的創(chuàng)建 5.2.2 exec函數(shù) 5.2.3 結(jié)束進(jìn)程 5.2.4 進(jìn)程等待 5.2.5 system函數(shù) 5.2.6 進(jìn)程的用戶標(biāo)識(shí)號(hào)管理 5.2.7 進(jìn)程標(biāo)識(shí)號(hào)管理 5.3 綜合應(yīng)用實(shí)例 5.4 小結(jié) 習(xí)題第6章 進(jìn)程間通信(IPC) 6.1 進(jìn)程間通信機(jī)制概述 6.1.1 信號(hào) 6.1.2 管道 6.1.3 System V IPC機(jī)制簡(jiǎn)介 6.2 信號(hào)處理 6.2.1 信號(hào)類(lèi)型 6.2.2 處理信號(hào)的系統(tǒng)函數(shù) 6.2.3 信號(hào)集 6.2.4 發(fā)送信號(hào) 6.3 管道 6.3.1 基本概念 6.3.2 管道的創(chuàng)建 6.3.3 創(chuàng)建管道的簡(jiǎn)單方法 6.3.4 命名管道 6.4 System V IPC機(jī)制 6.4.1 基本概念 6.4.2 消息隊(duì)列 6.4.3 信號(hào)量 6.4.4 共享內(nèi)存 6.4.5 綜合應(yīng)用實(shí)例 6.5 小結(jié) 習(xí)題第7章 線程操作 7.1 線程概述 7.1.1 線程的基本概念 7.1.2 用戶態(tài)線程與內(nèi)核態(tài)線程 7.2 線程管理 7.2.1 創(chuàng)建線程和結(jié)束線程 7.2.2 掛起線程 7.2.3 線程同步 7.2.4 取消線程和取消處理程序 7.2.5 線程特定數(shù)據(jù)的處理函數(shù) 7.2.6 線程屬性 7.3 小結(jié) 習(xí)題第8章 網(wǎng)絡(luò)編程 8.1 概述 8.2 TCP/IP基礎(chǔ) 8.2.1 參考模型 8.2.2 Linux中TCP/IP網(wǎng)絡(luò)的層結(jié)構(gòu) 8.3 BSD套接字接口 8.4 客戶機(jī)/服務(wù)器(c/s)模式 8.5 套接字網(wǎng)絡(luò)編程 8.5.1 套接字編程的基本流程 8.5.2 套接字地址 8.5.3 字節(jié)順序 8.5.4 字節(jié)處理函數(shù) 8.5.5 面向連接的基本套接字函數(shù) 8.5.6 其他套接字操作函數(shù) 8.5.7 數(shù)據(jù)報(bào)套接字操作 8.6 小結(jié) 習(xí)題第9章 數(shù)據(jù)庫(kù)編程 9.1 數(shù)據(jù)庫(kù)基本概念 9.1.1 數(shù)據(jù)與數(shù)據(jù)庫(kù) 9.1.2 數(shù)據(jù)庫(kù)管理系統(tǒng) 9.1.3 數(shù)據(jù)庫(kù)語(yǔ)言 9.1.4 數(shù)據(jù)庫(kù)系統(tǒng) 9.1.5 主要數(shù)據(jù)模型 9.2 SQL語(yǔ)言簡(jiǎn)介 9.2.1 數(shù)據(jù)庫(kù)表格 9.2.2 數(shù)據(jù)查詢 9.2.3 創(chuàng)建表格 9.2.4 向表格中插入數(shù)據(jù) 9.2.5 更新記錄 9.2.6 刪除記錄 9.2.7 刪除數(shù)據(jù)庫(kù)表格 9.3 MySQL數(shù)據(jù)庫(kù) 9.3.1 MySQL的安裝 9.3.2 MySQL管理 9.4 用C語(yǔ)言訪問(wèn)MySQL數(shù)據(jù)庫(kù) 9.4.1 連接數(shù)據(jù)庫(kù) 9.4.2 錯(cuò)誤處理 9.4.3 執(zhí)行SQL語(yǔ)句 9.5 小結(jié) 習(xí)題第10章 Linux下的GUl編程 10.1 概述 10.1.1 X服務(wù)器 10.1.2 X協(xié)議 10.1.3 Xlib庫(kù) 10.1.4 X客戶 10.2 Xlib編程 10.3 GTK+/GNOME編程 10.3.1 GTK+/GNOME簡(jiǎn)介 10.3.2 GTK+編程 11.3.3 使用GTK+編寫(xiě)GNOME程序 10.4 小結(jié) 習(xí)題第11章 飛機(jī)票網(wǎng)絡(luò)售票系統(tǒng) 11.1 系統(tǒng)框架 11.1.1 數(shù)據(jù)格式 11.1.2 服務(wù)器端程序框架 11.1.3 客戶端程序框架 11.2 程序源代碼和說(shuō)明 1 1.2.1 服務(wù)器端源代碼 1 1.2.2 客戶端源代碼 11.3 小結(jié)
章節(jié)摘錄
1.1.2Linux的特點(diǎn) 為什么Linux如此備受青睞?就讓我們來(lái)看一下Linux的特點(diǎn)吧?! ∽杂绍浖 inux可以說(shuō)是作為開(kāi)放源碼的自由軟件的代表,正是由于這一點(diǎn),來(lái)自全世界的無(wú)數(shù)程序員參與了Linux的修改、編寫(xiě)工作,程序員可以根據(jù)自己的興趣和靈感對(duì)其進(jìn)行修改。這讓Linux吸收了無(wú)數(shù)程序員的精華,不斷壯大?! ⊥耆嫒軵OSIX1.0標(biāo)準(zhǔn)POSIX是基于Unix的第一個(gè)操作系統(tǒng)國(guó)際標(biāo)準(zhǔn),這使得可以在Linux下通過(guò)相應(yīng)的模擬器運(yùn)行常見(jiàn)的:DOS、Windows的程序。 多用戶、多任務(wù) Linux支持多用戶,各個(gè)用戶對(duì)于自己的文件設(shè)備有自己特殊的權(quán)利,保證了各用戶之間互不影響。多任務(wù)則是現(xiàn)在計(jì)算機(jī)最主要的一個(gè)特點(diǎn),Linux可以使多個(gè)程序同時(shí)獨(dú)立地運(yùn)行。
編輯推薦
《精通Linux C編程》特色: 全面性:《精通Linux C編程》系統(tǒng)地介紹了Linux環(huán)境下進(jìn)行C程序開(kāi)發(fā)的方法和技巧,內(nèi)容全面,結(jié)構(gòu)清晰,易于閱讀?! ?shí)用性:《精通Linux C編程》理論與實(shí)踐相結(jié)合,給出了大量實(shí)用性較強(qiáng)的案例,使讀者擺脫枯燥的理論知識(shí)講解,將所學(xué)知識(shí)應(yīng)用于實(shí)際?! ?zhuān)業(yè)性:《精通Linux C編程》所列舉的應(yīng)用案例,代碼注釋詳盡,功能分析明確,并對(duì)關(guān)鍵代碼進(jìn)行透徹講解,具有較高的專(zhuān)業(yè)水準(zhǔn)?! ”憬菪裕骸毒↙inux C編程》附贈(zèng)一張光盤(pán),內(nèi)容包括案例源代碼、多媒體講解視頻及C語(yǔ)言編程技術(shù)文檔,書(shū)盤(pán)結(jié)合,學(xué)習(xí)更便捷,更輕松。
圖書(shū)封面
圖書(shū)標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版