C語言編程魔法書

C語言編程魔法書 pdf epub mobi txt 電子書 下載2025

出版者:機械工業齣版社
作者:陳軼
出品人:
頁數:504
译者:
出版時間:2017-5-23
價格:99.00元
裝幀:平裝
isbn號碼:9787111565215
叢書系列:
圖書標籤:
  • C語言
  • 編程
  • 編程語言
  • c
  • 技術
  • programming
  • gcc特性
  • C
  • C語言
  • 編程入門
  • 算法
  • 數據結構
  • 程序設計
  • 計算機科學
  • 軟件開發
  • 經典教材
  • 編程技巧
  • 代碼示例
想要找書就要到 圖書目錄大全
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

主要講解C11標準的語法內容,並且從整個編譯、連接到加載過程都會涉及。同時在後會分彆介紹GCC編譯器與Clang編譯器的C語言語法擴展。通過閱讀本書,讀者能夠完全掌握新標準的C語言編程。並且對C語言設計思想、實現方式也能有個大概的瞭解。

作者簡介

陳軼,網名zenny_chen,C語言與匯編語言重度用戶與擁躉者,安沃傳媒移動客戶端及HTML5技術研發總監、首席科學傢。多年高性能計算、嵌八式係統與移動互聯網實踐經驗,深諳實時操作係統內核、設備驅動研發,對多媒體高性能計算編程、移動端開發以及各種處理器架構如數傢珍,同時精通計算機底層基礎技術與各種編程語言,尤其精通C/C++、Objective—C以及Swift。現任OpenGPU社區“並行計算討論區”以及“高級計算機體係結構討論區”兩大版塊的版主,以及CocoaChina社區的Swift編程語言討論區與代碼例子區的版主。《OpenCL異構並行計算原理、機製與優化實踐》作者之一,App Store以及MacApp Store中CPU Dasher的作者,曾任理光上海圖像技術有限公司高級體係結構工程師。

目錄資訊

前言
第一篇 預備知識篇
第1章 C魔法概覽 /2
1.1 例說編程語言 2
1.2 用C語言編程的基本注意事項 6
1.3 主流C語言編譯器介紹 8
1.4 關於GNU規範的語法擴展 10
1.5 用C語言構建一個可執行程序的流程 11
1.6 本章小結 12
第2章 學習C語言的預備知識 /14
2.1 計算機體係結構簡介 14
2.1.1 貯存器 15
2.1.2 存儲器 15
2.1.3 寄存器 16
2.1.4 計算單元 16
2.1.5 程序執行流程 16
2.2 整數在計算機中的錶示 17
2.2.1 原碼錶示法 18
2.2.2 補碼錶示法 19
2.2.3 八進製數與十六進製數 20
2.3 浮點數在計算機中的錶示 22
2.4 地址與字節對齊 24
2.5 字符編碼 25
2.6 大端與小端 28
2.7 按位邏輯運算 28
2.8 移位操作 30
2.8.1 算術左移與邏輯左移 30
2.8.2 邏輯右移 30
2.8.3 算術右移 31
2.8.4 循環右移 32
2.9 本章小結 32
第3章 C語言編程的環境搭建 /33
3.1 Windows操作係統下搭建C語言編程環境 33
3.1.1 安裝Visual Studio Community 2017 34
3.1.2 安裝MinGW編譯器 40
3.1.3 安裝LLVM Clang編譯器 43
3.2 macOS係統下搭建C語言編程環境 45
3.3 本章小結 51
第二篇 基礎語法篇
第4章 C語言中的基本元素 /54
4.1 C語言中的字符集 55
4.2 C語言中的token 56
4.2.1 C語言中的標識符 57
4.2.2 C語言中的關鍵字 58
4.2.3 C語言中的常量與字符串字麵量 60
4.2.4 C語言中的標點符號 60
4.3 關於C語言中的“對象” 62
4.4 C語言中的“副作用” 63
4.5 C語言標準庫中的printf函數 63
4.6 本章小結 65
第5章 基本數據類型 /66
5.1 整數類型 66
5.1.1 int類型 67
5.1.2 short類型 68
5.1.3 long類型 69
5.1.4 long long類型 71
5.1.5 布爾類型 72
5.1.6 字符類型 73
5.1.7 寬字符以及Unicode字符類型 77
5.1.8 size_t與ptrdiff_t類型 81
5.1.9 C語言中的標準整數類型 82
5.2 浮點類型 84
5.3 數據精度與類型轉換 86
5.3.1 整數晉升 87
5.3.2 帶符號與無符號整數之間的轉換 87
5.3.3 浮點數與浮點數的轉換以及浮點數與整數之間的轉換 90
5.4 C語言基本運算操作符 92
5.4.1 加、減、乘、除與求模運算操作符 92
5.4.2 按位邏輯操作符 93
5.4.3 自增、自減操作符 94
5.4.4 關係操作符、相等性操作符與邏輯操作符 95
5.4.5 移位操作符 96
5.4.6 圓括號操作符 97
5.5 sizeof操作符 98
5.6 投射操作符 99
5.7 本章小結 101
第6章 用戶自定義類型 /102
6.1 枚舉類型 102
6.2 結構體類型 105
6.2.1 結構體概述 105
6.2.2 用結構體創建對象並訪問其成員 107
6.2.3 結構體復閤字麵量 110
6.3 聯閤體類型 113
6.4 位域 117
6.4.1 位域的一般特性 118
6.4.2 位域成員的存放與布局 120
6.4.3 匿名位域 122
6.4.4 位域使用示例 124
6.5 字節對齊與字節填充 125
6.5.1 _Alignof操作符 125
6.5.2 _Alignas對齊說明符 126
6.5.3 結構體成員的字節對齊與字節填充 129
6.6 復數類型 133
6.7 本章小結 135
第7章 C語言的數組與指針 /136
7.1 一維數組 136
7.2 多維數組 141
7.3 變長數組 145
7.4 一級指針與對象地址 147
7.4.1 地址與指針的基本概念 148
7.4.2 訪問指針對象所指對象的內容 149
7.4.3 指針對象的其他操作 150
7.5 多級指針 153
7.6 指嚮用戶自定義類型的指針 156
7.7 指針與數組的關係 159
7.8 指嚮數組的指針 162
7.9 void類型、指嚮void類型的指針與空指針 165
7.10 字符數組與字符串字麵量 167
7.11 完整與不完整類型 170
7.12 靈活的數組成員 171
7.13 本章小結 173
第8章 C語言的控製流語句 /174
8.1 逗號錶達式 174
8.2 條件錶達式 176
8.3 if-else語句 176
8.4 switch-case語句 179
8.5 while與do-while迭代語句 182
8.6 for迭代語句 187
8.7 goto語句 189
8.8 本章小結 192
第9章 C語言的函數 /193
9.1 函數的聲明與定義 194
9.2 函數調用與實現 196
9.2.1 函數調用的順序點 197
9.2.2 函數的棧空間 200
9.2.3 函數的參數傳遞與返迴 201
9.2.4 通過形參修改實參的值 204
9.3 數組類型作為函數形參 205
9.4 帶有不定參數類型及個數的函數聲明與調用 209
9.5 函數的遞歸調用 212
9.6 內聯函數 218
9.7 函數的返迴類型與無返迴函數 221
9.8 指嚮函數的指針 223
9.9 C語言中的主函數main 226
9.10 函數與函數調用作為sizeof操作符 228
9.11 本章小結 229
第10章 C語言預處理器 /230
10.1 宏定義 231
10.1.1 宏的基本使用 232
10.1.2 宏定義中的#操作符 234
10.1.3 宏定義中的##操作符 236
10.1.4 宏替換 238
10.1.5 可變參數的宏定義 240
10.2 C語言中預定義的宏 243
10.2.1 C語言強製要求的預定義宏 243
10.2.2 環境宏 244
10.2.3 條件特徵宏 245
10.2.4 主流編譯器及平颱預定義的宏 246
10.3 條件預編譯 247
10.4 源文件包含預處理指示符 251
10.5 #error 預處理指示符 256
10.6 #line 預處理指示符 256
10.7 #undef 預處理指示符 257
10.8 pragma預編譯指示符與操作符 258
10.9 空指示符與C語言中的程序注釋 260
10.10 本章小結 262
第11章 C語言程序的編譯上下文 /263
11.1 C語言程序中的作用域和名字空間 263
11.1.1 文件作用域 264
11.1.2 函數作用域 265
11.1.3 函數原型作用域 266
11.1.4 語句塊作用域 267
11.1.5 標識符的重定義與作用域的疊交 269
11.1.6 標識符的名字空間 272
11.2 全局對象與函數 275
11.3 靜態對象與函數 277
11.4 局部對象 280
11.5 對象的存儲與生命周期 282
11.6 _Thread_local對象 285
11.7 本章小結 286
第三篇 高級語法篇
第12章 C語言中的類型限定符 /290
12.1 const限定符 290
12.1.1 const限定符修飾普通對象 291
12.1.2 const限定符修飾數組元素 293
12.1.3 const限定符修飾指針類型對象 294
12.1.4 const限定符修飾函數形參類型為數組的對象 299
12.1.5 類型限定符的本質含義 301
12.2 volatile限定符 302
12.3 restrict限定符 304
12.4 _Atomic限定符 307
12.5 本章小結 314
第13章 C語言的類型係統 /316
13.1 對象類型與函數類型 316
13.2 對聲明符的進一步說明 318
13.3 更復雜的聲明 322
13.3.1 將某一類型轉換為指嚮該類型的指針 322
13.3.2 判定當前類型屬於哪種對象類型 322
13.3.3 復雜復閤類型的判斷 324
13.4 typedef類型定義 327
13.4.1 typedef的一般使用 327
13.4.2 typedef與類型限定符相結閤的使用 330
13.4.3 用typedef來定義結構體與聯閤體的類型 332
13.5 本章小結 335
第14章 C11標準中的錶達式、左值與求值順序 /336
14.1 常量錶達式 338
14.2 泛型選擇錶達式 340
14.3 靜態斷言 343
14.4 C語言中的左值 344
14.5 C語言中錶達式的求值順序 348
14.6 C語言中的語句 352
14.7 本章小結 355
第15章 函數調用約定與ABI /356
15.1 Windows操作係統環境下x86處理器的函數調用約定 357
15.1.1 Windows操作係統下32位x86執行模式的函數調用約定 357
15.1.2 Windows操作係統下64位x86執行模式的函數調用約定 363
15.2 Unix/Linux操作係統環境下x86處理器的函數調用約定 368
15.3 ARM處理器環境下的函數調用約定 370
15.3.1 AArch32架構環境下的函數調用約定 370
15.3.2 AArch64架構環境下的函數調用約定 373
15.4 本章小結 375
第16章 創建靜態庫與動態庫 /376
16.1 Windows係統下創建靜態庫與動態庫 377
16.1.1 Windows係統下創建並使用靜態庫 377
16.1.2 Windows係統上創建並使用動態庫 379
16.2 macOS係統下創建靜態庫與動態庫 382
16.2.1 macOS係統下創建並使用靜態庫 383
16.2.2 macOS係統下創建並使用動態庫 386
16.3 Linux係統下創建並使用靜態庫與動態庫 390
16.3.1 Linux係統下創建並使用靜態庫文件 390
16.3.2 Linux係統下創建並使用動態庫 391
16.4 本章小結 393
第四篇 語法擴展篇
第17章 GCC對C11標準的語法擴展 /396
17.1 在錶達式中使用復閤語句與聲明 397
17.2 聲明語句塊作用域的跳轉標簽 398
17.3 跳轉標簽作為值 401
17.4 嵌套函數 402
17.5 使用typeof來獲取對象類型 405
17.6 使用__auto_type做類型自動推導 409
17.7 對復數操作的擴展 411
17.8 半精度浮點類型 412
17.9 長度為零的數組 413
17.10 對可變參數個數的宏的語法擴展 415
17.11 case語句中使用範圍錶達式 417
17.12 投射到一個聯閤體類型 418
17.13 使用二進製整數字麵量 419
17.14 使用__attribute__指定函數、對象與類型的屬性 420
17.14.1 __attribute__用於修飾函數的屬性 422
17.14.2 __attribute__用於修飾對象的屬性 440
17.14.3 __attribute__用於修飾類型的屬性 443
17.15 本章小結 444
第18章 Clang編譯器對C11標準的擴展 /445
18.1 特徵檢查宏 446
18.2 _Nullable與_Nonnull 446
18.3 函數重載 448
18.4 Blocks語法 449
18.5 本章小結 462
第19章 對C語言的未來展望 /463
19.1 C語言中的屬性 465
19.2 fallthrough屬性 466
19.3 數組片段 467
19.3.1 數組片段的賦值操作 468
19.3.2 數組片段的算術計算操作 470
19.3.3 數組片段用於函數調用的情況 471
19.4 其他語法特性 472
19.5 本章小結 472
第五篇 項目實踐篇
第20章 製作UTF-8與UTF-16編碼字符串的轉碼器 /474
20.1 UTF-8字符編碼格式 474
20.2 UTF-16字符編碼格式 476
20.3 代碼示例 478
20.4 本章小結 487
第21章 製作控製颱計算器 /488
21.1 對數字的解析 489
21.2 對操作符的優先級處理 489
21.3 代碼示例 491
21.4 本章小結 504
· · · · · · (收起)

讀後感

評分

評分

評分

評分

評分

用戶評價

评分

還是挺不錯的,不適閤作為入門讀物

评分

12.1節中"const限定符用於修飾一個對象,錶明該對象是一個常量(constant)"的說法是錯誤的,在C語言中const用於限定一個變量為隻讀(這是跟C++不同的一點),是變量!完全不是常量constant!對不住前言中所述的“本書尤其著重C語言標準語法上的精確描述”。

评分

還是挺不錯的,不適閤作為入門讀物

评分

還是挺不錯的,不適閤作為入門讀物

评分

介紹老技術的“新發芽”,很多C的新技能點介紹,對C語言的魔法點都很好的介紹瞭。可以作為新手的代碼練習本。寫代碼,思考代碼,還有新的魔法。

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 qciss.net All Rights Reserved. 小哈圖書下載中心 版权所有