|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
( l# R' j* R) {5 B% M9 w$ h+ P# N9 c7 S4 K
书名:《一站式学习C编程》5 ?5 U' `; m8 z% V v( \. m
作者:宋劲彬* `5 x1 o3 D% j4 U- U c* }
出版社:电子工业出版社+ {5 X' z1 a( }4 W
出版年:2011年3月1日(第1版)! y& w/ [) A+ f( c
定价:59.00元0 N9 ~3 Y+ r3 H& `; y. Y! D
装帧:平装; j* m. Z( T( f- n1 E) Z0 X
ISBN:97871211298271 B" [- F1 R) ^7 j- O; D5 K
8 g: m3 ^5 s; d4 F; x0 Y
购买链接:
4 x6 N& e& ]7 } d& C
% F2 e% a' r3 e1 [6 I ( A* e/ W3 S9 ]- ~( t$ |8 n
亚马逊(kindle)-> 传送门3 h" C3 M+ t& I" O# y
, X2 G) B W& d$ q7 l% {当当网 -> 传送门# I% w% @6 v6 {1 u9 C
3 x, Z3 y; \% F5 n; S
京东 -> 传送门
! B' U! x- r$ n( m C# s% u4 ?
1 C J5 O2 y" ~1 f) H
9 ~: u( G( F; _# X内容简介:: s) C: E& }) x0 E7 _2 x& M5 h! j1 h
3 l ?+ @0 p$ I \
. t/ S$ C. C/ g; y
《一站式学习C编程》有两条线索,一条线索是以 Linux 平台为载体全面深入地介绍 C 语言的语法和程序的工作原理,另一条线索是介绍程序设计的基本思想和开发调试方法。《一站式学习C编程》分为两部分:第一部分讲解编程语言和程序设计的基本思想方法,让读者从概念上认识 C 语言;第二部分结合操作系统和体系结构的知识讲解程序的工作原理,让读者从本质上认识 C 语言。
/ f# _5 n$ s5 E- }/ F& R
3 h& F' E0 s8 T6 `0 n7 H* H' R 《一站式学习C编程》适合做零基础的初学者学习 C 语言的第一本教材,帮助读者打下牢固的基础。有一定的编程经验但知识体系不够完整的读者也可以对照《一站式学习C编程》查缺补漏,从而更深入地理解程序的工作原理。《一站式学习C编程》最初是为北京亚嵌教育研究中心的嵌入式 Linux 系统工程师就业班课程量身定做的教材之一,也适合作为高等院校程序设计基础课程的教材。《一站式学习C编程》对于 C 语言的语法介绍得非常全面,对 C99 标准做了很多解读,因此也可以作为一本精简的 C 语言语法参考书。
0 ?; d! a1 {& p0 e
* ^7 E( g( h$ W% L) P/ |- ?目录:
. L$ [3 ~1 m1 O5 K; G- b. U7 b
" Y5 @. V5 B1 P. T- [& G7 m# @7 i
' I; _4 L G. c" r) z% e上篇 C语言入门% L0 E Z @: Q' V4 T" `( O
# q& D a6 U& h" D第1章 程序的基本概念
9 n: U5 d2 |5 @" c% B7 Y) B
3 N. ?% f& t+ z/ t9 g/ q1.1 程序和编程语言7 @) D- e; c$ b- ^ H
1.2 自然语言和形式语言; R& M3 G0 H6 o1 Y- {0 V
1.3 程序的调试7 D" O; _, ]" L6 h. g- m
1.4 第一个程序" g3 @, }/ e3 R6 G$ ?" K9 J
1 X1 ?0 K" g! c4 g' x$ o, a第2章 常量、变量和表达式- [( w( [5 _) X7 m' M
# m# n. H& y. }/ d2.1 继续Hello World8 W5 Y( X5 |2 n- E# b
2.2 常量% d/ m8 W. O$ E- {& e0 O
2.3 变量0 T9 {, a# w) U9 J" ^: b
2.4 赋值4 ]& K+ u/ z1 \
2.5 表达式% r& ~" F- v3 _. k! Y0 T' }
2.6 字符类型与字符编码
. @* G0 A R. n: @( d4 f4 Z
: ^$ G& d9 J9 e, ~: }6 l1 o& [第3章 简单函数
0 Q) B% ?& }- ~5 W: x
( M; ^/ j+ B2 \0 l( K2 q9 q" t5 R) }3.1 数学函数/ r* Z: W/ R: u6 S
3.2 自定义函数
! U7 z( u$ L0 Y% B3.3 形参和实参9 f; {. e' s( _5 V
3.4 全局变量、局部变量和作用域' E. G( v9 m) F/ D) i% q
+ m9 m7 e1 {1 Y第4章 分支语句5 R5 N! `8 y& i5 c7 z( Q+ H: f* k7 J
* {% q6 g! G/ H9 P+ l4.1 if语句+ O; r, Z7 R& Q6 e
4.2 if/else语句
' v) [. S1 f' K; W4.3 布尔代数% @7 x) }( I( ?9 H3 G4 I8 D3 ]! V
4.4 switch语句2 ~+ v y# r9 R) S/ x
- l, |$ a5 T! u" H' ^第5章 深入理解函数" F) V! ~/ [0 R1 Y. x" C
; z, h" P7 G( M5.1 return语句
0 S. Y% ?7 r( P `5.2 增量式开发
: ^6 ?) U3 B3 d% o5.3 递归5 F: i6 H3 O# A* {9 m" \/ y
! a4 {, m- {$ [# g' j
第6章 循环语句0 M( y; T$ i. u, K3 Z8 `& A
5 y. U5 m% E+ k1 Q6.1 while语句
3 L. L: d. w7 ^2 h" v' V6.2 do/while语句6 u' v7 K/ C# n3 ~* z- D0 U
6.3 for语句
, @' c3 m8 H- }! P6.4 break和continue语句
: w/ q' q1 r( |& u: t6.5 嵌套循环
5 \# q5 {& V* n( M7 o6.6 goto语句和标号; b) R( |0 U+ F
4 @' {- ?4 [8 k$ H/ A3 V% b第7章 结构体$ q) e) B" C6 j c& \
0 V8 b% d L; D
7.1 复合类型与结构体
( V% d; @! Q2 v* q: L7.2 数据抽象
7 c6 D& S$ D5 j4 n; s, Q- ^7.3 数据类型标志/ d" i/ i/ ^( f* V. g3 M( p z6 W
7.4 嵌套结构体* _0 y+ G X6 u3 j/ Y* ~
* c0 s2 F/ o- s, B第8章 数组
, D- p( D+ e; }5 x2 m% T& U1 _5 U4 `4 S5 B
8.1 数组的基本概念4 Q( v/ c0 @7 R$ `% f8 n
8.2 数组应用实例:统计随机数 L" q5 ]5 M! H! ^
8.3 数组应用实例:直方图
! z8 T8 [& ~, i, g" p& x8.4 字符串1 p5 o: c1 H9 m7 B- J
8.5 多维数组
@: c' j0 G. f W- p
6 d6 }$ I- q8 j第9章 编码风格$ q$ F) r/ b! K) L1 ]
& ^) v9 t" I- W- J
9.1 缩进和空白
5 @# Y0 G+ g! J. W5 m# ^9.2 注释
) S1 r. _9 j$ Q. V9.3 标识符命名/ Y+ K9 w! ]% I8 u8 q+ F
9.4 函数' P+ R' j0 I a6 v; M& P
9.5 indent工具
. r4 O, k ~6 W! U9 {1 q
" `8 N" p% J1 V/ I0 [3 r6 P第10章 gdb
8 T) R' n$ r- r& D6 a+ J6 D
5 Y7 w: ^/ Y: ?7 J' f$ [6 d8 {10.1 单步执行和跟踪函数调用; e }% }3 o9 t( l: E
10.2 断点
$ |" I+ p8 N# J5 e* e10.3 观察点- a4 t8 a n5 H! L, l& s* g. I
10.4 段错误
1 ~6 Z) B0 P' C: n3 k3 t- f
( F% l, Q6 P3 P5 h第11章 排序与查找' q2 y* U5 K, ^# S
% @8 e$ c. ~" H. G; E$ f' ^( K' j
11.1 算法的概念
; O1 o# h/ Z+ r* y11.2 插入排序
# i8 m0 t# m/ N6 S& Q" H* z" A11.3 算法的时间复杂度分析- R; [+ }3 v8 y- r; w4 w9 h4 p
11.4 归并排序
$ b& c0 n0 a5 U; ^- f# ^11.5 线性查找
* u+ s6 W" G% A. b O11.6 折半查找
+ e3 p7 K0 _8 q3 ?* l% f/ [, o0 x1 w* z; `' J: t8 z0 A
第12章 栈与队列
8 @8 O3 Z% i; U' z! T( I. @6 J$ P" y7 q" ?& R
12.1 数据结构的概念
( _, [" T: ]# M ?( Q' i12.2 堆栈
; D$ x% r9 S9 }' j12.3 深度优先搜索) t& q* y" m' @' P$ U( A g; p7 {2 \
12.4 队列与广度优先搜索
: J. y4 j3 a7 G& Q+ n K- j! Q* |12.5 环形队列
9 i; _: \! \2 i本阶段总结% h7 b* Z7 E! \0 S+ z
. w. T0 N1 \3 g1 E3 H3 ~' B下篇 C语言本质+ b1 p( m3 @4 n
3 h$ o2 l3 l& @# u! s$ f7 b: a$ B第13章 计算机中数的表示+ s. V; H& e' `6 r
1 p8 l" e+ a* E! ]& d; ~8 D13.1 为什么计算机用二进制计数
# b% \8 ?- p& n) A4 _! Q! ~13.2 不同进制之间的换算
' e" ?! q$ l) I+ y. w) n5 |, A13.3 整数的加减运算) ?. S' H' W3 ^& ^5 q% V, i% W
13.3.1 Sign and Magnitude表示法
$ \2 T0 ]% S, p( C2 B& |. B, k, D13.3.2 1's Complement表示法
3 ]8 I" `/ O t/ r13.3.3 2's Complement表示法8 r4 R: Y* ~ A3 k2 V( B
13.3.4 有符号数和无符号数
$ a# Z! e; U1 o6 `" g& w13.4 浮点数
& s) O( D5 u$ V/ F3 L
8 \' f- y( K9 j+ M第14章 数据类型详解/ \5 F0 y% [0 [+ {6 w
8 ^0 J1 |/ i/ ]8 P8 g& i4 a, f& D
14.1 整型
, _- ~( U: \" }( {! j0 D14.2 浮点型
8 p# ]# j# X/ k14.3 类型转换, U' W5 v, o& N6 {* o$ W
14.3.1 Integer Promotion
. R+ G% `* D( |5 R8 x# I14.3.2 Usual Arithmetic Conversion2 k* |) b& ]4 r% J! r3 ~3 w
14.3.3 由赋值产生的类型转换& j6 r7 W+ |8 g$ s# V3 o, U; j
14.3.4 强制类型转换
3 b. M" J. X# i$ P3 o14.3.5 编译器如何处理类型转换
. D5 T* S& q* r8 t
2 j/ t. n" v2 O: W" ~% n# D7 I第15章 运算符详解- Q! _! O1 v0 |' Y
: _/ Y0 }: A/ @8 C- E# `
15.1 位运算# L+ ]8 n/ E5 x! |$ h' ^
15.1.1 按位与、或、异或、取反运算 ~6 g# ~' r& \2 y) X( O
15.1.2 移位运算
& u1 k& {0 ]4 @8 _/ A; h! S15.1.3 掩码; p; ?: e8 S/ w
15.1.4 异或运算的一些特性
/ n. _$ q6 |, B; U1 K% Q15.2 其他运算符
1 g* M- w7 k6 `' Q* I. T1 I15.2.1 复合赋值运算符
K; X8 j; E- w% I8 m5 _15.2.2 条件运算符
0 ]; o* p6 {6 h/ V1 k) h9 ~% p$ Q15.2.3 逗号运算符
+ o" G$ X+ H1 l% [7 x. d' R/ Q, z15.2.4 sizeof运算符与typedef类型声明
) G; W6 _$ j5 h q8 a5 p. R. l15.3 Side Effect与Sequence Point
+ q- Z3 a/ Q) P" m' a' b5 e15.4 运算符总结1 P) V9 h0 i. |4 v# u; K
, {5 u2 E6 C3 ~4 F& S
第16章 计算机体系结构基础
4 [0 D. R3 E, ?" h: ]9 B/ n f) L( D* I& d% t, @% b" v: z
16.1 内存与地址$ a3 y* C3 o. [3 i& V9 [# a
16.2 CPU
1 B+ L; H" J( q H" I0 i16.3 设备! b- f% _8 F- g2 S
16.4 MMU. v# ^7 j# e8 ?- Z
16.5 Memory Hierarchy5 y" Y ~5 T* k. n$ J6 \7 h6 u
: g! h* V( T: d- S+ k
第17章 x86汇编程序基础+ {: K/ n3 y! R* K2 D$ N y5 G
- k+ e% B- q5 ~, G( G6 d% {2 R0 O& S17.1 最简单的汇编程序
6 R) a: o* Z h8 P17.2 x86的寄存器
! C( n: J7 e" B17.3 第二个汇编程序. e0 o* s" {7 z' [
17.4 寻址方式
: m9 d: b: A" ~- O, E17.5 ELF文件
$ m7 z \4 x, S6 E17.5.1 目标文件0 ^8 l( h) H8 m @4 b4 O
17.5.2 可执行文件
( v& e1 [ D- U" X0 G( j3 ~; C3 P( u3 m
第18章 汇编与C之间的关系
8 r" l. @! p# Y* C- o' w+ V5 l
6 d& J7 R$ B4 K9 I9 K% { f y18.1 函数调用
4 Q5 M. v( h: z18.2 main函数、启动例程和退出状态2 c* Z/ r4 E5 P2 E6 J
18.3 变量的存储布局
5 e7 L- w3 a& r) U4 G1 g18.4 结构体和联合体
. @, J/ w( Y2 x( O9 x) s18.5 C内联汇编
1 [$ l6 N1 X* W; M: z; [18.6 volatile限定符& U1 k+ o) g! v5 O; C
) g! S1 T8 v. z! h6 P3 {& \第19章 链接详解! |/ Q5 {& p l: V {! Y
9 i( g& H) v( Q9 Y, ~
19.1 多目标文件的链接9 d4 U; C1 }( y: ?; F* v
19.2 定义和声明# B! ?1 t7 ^3 d/ j# J+ L j
19.2.1 extern和static关键字
( y7 U) e! n6 s) y8 y4 {6 y19.2.2 头文件) A+ W0 w: z e6 m& `: b* c: m+ x
19.2.3 定义和声明的详细规则0 v! Y3 A; M" O. F
19.3 静态库
/ E: C( E" _2 K- ^" W19.4 共享库6 j4 @; ~( K0 W1 ~
19.4.1 编译、链接、运行
6 |! x$ T$ Q) O) @7 x! N/ |5 S19.4.2 函数的动态链接过程
6 z. p! A* P) a" j: p. p8 ]5 P% l19.4.3 共享库的命名惯例
7 q; w2 f5 m; D7 k19.5 虚拟内存管理6 a0 j* ]( |# T9 b; k; a& b3 a
* H5 d5 z1 a7 v" D2 g2 W$ Z% W
第20章 预处理9 r/ B8 u* B& b b5 J6 _! U! [
( v: [% V5 O( {# S# c20.1 预处理的步骤2 |. W, ^" O5 G, Z
20.2 宏定义
; A' g2 Z2 j" T+ x: ^ F; I20.2.1 函数式宏定义3 d: m3 s8 d" [/ W0 z
20.2.2 内联函数
* n0 C' l( h( ^$ J* z20.2.3 #、##运算符和可变参数- s; a8 Z. e! |+ l' w0 u9 z$ U1 ]
20.2.4 #undef预处理指示
' R( L2 a( g5 [20.2.5 宏展开的步骤
- h w6 v. Z7 P3 l; L: B20.3 条件预处理指示
% A* ^& m" [' p20.4 其他预处理特性
' A- z' D4 {' ~- v1 o
# Y3 g' S0 {! q第21章 Makefile基础
" D/ O! L& i D( K( V, U; m
8 ?, b' _: H4 O- w; p, a" D1 @21.1 基本规则+ Q5 T. Z' o% X9 @& Y1 S* e
21.2 隐含规则和模式规则
7 I* c7 _6 J6 y) Y# k! S21.3 变量7 P( h @0 d. A, ?
21.4 自动处理头文件的依赖关系
3 r0 m- J# P( _' Y- i" g2 p21.5 常用的make命令行选项
1 r/ ^4 |" L0 V# B( G1 z6 a5 N9 t- L: T$ ~1 ~% @: c+ f0 I) |
第22章 指针: H& I' h1 Q* _
( W& N- \0 ?; K7 L/ S& q22.1 指针的基本概念
# l% {6 e, [ R5 R# }22.2 指针类型的参数和返回值
( f# y+ O8 D/ I, D! w" S! T1 o t22.3 指针与数组* t! U$ R7 o0 q' t
22.4 指针与const限定符% Z3 [; M1 K1 z! O. a% U7 u
22.5 指针与结构体 l+ a$ j2 G& P6 f& m% ]
22.6 指向指针的指针与指针数组
$ m6 J: L' b. N9 s2 [8 d22.7 指向数组的指针与多维数组0 q9 F, J; I# ~* S/ C
22.8 函数类型和函数指针类型
0 {+ f2 q$ M' J) ?22.9 不完全类型和复杂声明
- k O8 d- ]4 `5 e5 u( B- q9 t8 O" C) Z7 a
第23章 函数接口
, t4 e, \5 d; T3 @* A
3 _( x! G# L2 v& c& V2 U23.1 本章的预备知识- ?4 o) V& n9 ?: l' ^) f
23.1.1 strcpy与strncpy
) \# ]3 ]5 Y! J& ~- K6 D ^23.1.2 malloc与free2 {1 u. |$ I3 ?* P# D
23.2 传入参数与传出参数
- Y8 U- |$ v4 r23.3 两层指针的参数
8 m4 l2 }9 ^* v4 ~23.4 返回值是指针的情况
, v# i! ^# \$ ` P. {23.5 回调函数
8 [3 O! [5 o# R( R23.6 可变参数9 W$ k: w( W' @5 F
) x* I0 G8 o0 B: k3 N! h( C
第24章 C标准库" ^* C5 V1 R; Z) V# k8 l
) B) }7 ?- _. b v% {24.1 字符串操作函数
; f: R$ \4 e+ ~( I24.1.1 给字符串赋初值0 _0 g# {! Y& ~7 r, r
24.1.2 取字符串的长度
9 ]/ o* H% N$ D6 X, G* c24.1.3 拷贝字符串
' O, o6 ^4 r% N4 c; K2 s24.1.4 连接字符串! i! `% ^6 ~ }+ w' w
24.1.5 比较字符串
; x( u2 ? O( D6 {7 N5 Z24.1.6 搜索字符串" I5 y) G1 u% Q9 a4 A+ Z3 ]
24.1.7 分割字符串
* S2 r/ o/ ?1 c; R e24.2 标准I/O库函数5 c1 D( j% \/ q8 b) K5 X) s' L
24.2.1 文件的基本概念
( g! ]$ ?' W3 P& j, U24.2.2 fopen/fclose
- p0 K% \, s. N9 L- P24.2.3 stdin/stdout/stderr
/ E. c/ f+ T# Z5 `5 c- c! g24.2.4 errno与perror/strerror函数
) B( v3 O! z) O' x/ v7 c0 b: M24.2.5 以字节为单位的I/O函数1 L. k9 ]4 }* Q7 R" D# U( U
24.2.6 操作读写位置的函数4 Y3 R$ ^& b4 Y- y: w: D* H, h
24.2.7 以字符串为单位的I/O函数
& j7 B; x4 {/ j* J5 o24.2.8 以记录为单位的I/O函数. }3 x2 y6 l2 r: t) d
24.2.9 格式化I/O函数/ D9 u9 B) X* O0 r: G. Y
24.2.10 C标准库的I/O缓冲区; V: `5 P+ q$ F, c7 h; |% \" a# D
24.2.11 本节综合练习
1 B0 i; C+ s. V24.3 数值字符串转换函数
0 [0 x4 a5 \% C0 ~24.4 分配内存的函数
# K P; m3 ^4 h' ^( I
; _: B! @7 Y4 Y0 e( {第25章 链表、二叉树和哈希表
3 l, J: w+ u5 R1 X6 V6 G* J
) v, [! C: B/ U6 N) T, B) _. C; W5 e25.1 链表 Q$ k; D7 q5 [1 e
25.1.1 单链表, R3 y& t) @& S
25.1.2 双向链表
4 c$ n, P2 X5 b4 I( o$ X25.1.3 静态链表
! u! g ^/ x" Y/ d9 U. \4 n25.1.4 本节综合练习- W8 | A- B7 P( S; V
25.2 二叉树) O X, k1 I8 r$ \- ~ h9 `9 b1 Z
25.2.1 二叉树的基本概念/ ?+ {1 l# P1 }* U# Z4 c+ _
25.2.2 排序二叉树
3 a5 t: L4 a% p; o3 @8 t- j9 U" i25.3 哈希表: X. s6 F1 g; |' R
本阶段总结9 s- O2 q9 B2 G6 C+ r
9 v% h2 S f0 T8 B: P
附录A 字符编码
! m7 g) _0 X4 I/ Q4 q9 V0 j
; b$ l$ V; j& i1 [+ X$ r索引
$ G% L6 x* G& e6 J! [1 ?+ E8 f! J+ J# r6 _, [
参考文献4 t+ i0 P) r' Y3 l; a' w
; B7 B& R0 S& o! J( q
1 |; f3 s+ Y }# } l$ Z |
|