kindle电子书

资源下载,尽在我的书库!
首页 > kindle电子书库 > 工业|计算机|互联网 > 电子、计算机、网络

C语言开发从入门到精通(异步图书)

  • 作者: 多作者
  • 体积:5.37 MB
  • 语言:中文
  • 日期:2018-06-07
  • 推荐:

简介:本书循序渐进、由浅入深地详细讲解了C语言开发的技术,并通过具体实例的实现过程演练了各个知识点的具体使用流程。全书共22章,第1~4章分别讲解了C语言开发的基础知识,包括C语言简介,安装开发工具等;第5~10章分别讲解了函数、输入/输出、流程控制、数组操作等知识,这些内容都是C语言技术的核心知识;第11~20章分别讲解了指针、结构体、共用体和枚举、链表、位运算、预编译、文件操作、错误调试和高级编程技术的知识,这些内容是C语言开发技术的重点和难点;第21~22章分别通过2个综合实例的实现过程,介绍了C语言在综合项目中的开发过程。全书内容以“技术解惑”和“范例演练”贯穿全书,引领读者全面掌握C语言。

电子书详细介绍

TAG():C C语言 编程 计算机 IT

 本书循序渐进、由浅入深地详细讲解了C语言开发的技术,并通过具体实例的实现过程演练了各个知识点的具体使用流程。全书共22章,第1~4章分别讲解了C语言开发的基础知识,包括C语言简介,安装开发工具等;第5~10章分别讲解了函数、输入/输出、流程控制、数组操作等知识,这些内容都是C语言技术的核心知识;第11~20章分别讲解了指针、结构体、共用体和枚举、链表、位运算、预编译、文件操作、错误调试和高级编程技术的知识,这些内容是C语言开发技术的重点和难点;第21~22章分别通过2个综合实例的实现过程,介绍了C语言在综合项目中的开发过程。全书内容以“技术解惑”和“范例演练”贯穿全书,引领读者全面掌握C语言。
本书不但适用C语言的初学者,也适合有一定C语言基础的读者学习,还可以作为大专院校相关专业的师生用书和培训学校的教材。

编辑推荐

本书特色是实现了入门知识、实例演示、范例演练、技术解惑、综合实战5大部分内容的融合,让读者看得懂、用得上、学得会。

一本书的容量,讲解了入门类、范例类和项目实战类三类图书的内容。

丰富的配套资源 学习更高效
330个实例,更多的实践演练机会
749分钟视频讲解,降低学习难度
220个拓展实例,真正地举一反三
69个技术解惑,破解学习难点

“技术讲解”→范例演练”→“技术解惑”贯穿全书,全面掌握C语言开发

技术讲解:通过110个实例,循序渐进地讲解了C语言开发的各个知识点。
范例演练:220个拓展范例和2个综合实例,使读者真正具有项目实战能力。
技术解惑:把容易混淆的概念单独讲解和剖析,帮助读者绕过学习中的陷阱。

作者简介

上海复旦大学计算机科学技术学院硕士,通信工程博士,精通Java、C语言、C++程序开发,擅长底层技术和应用程序的结合。现在就职于可穿戴设备委员会成员单位上海微系统研究院,专门从事于可穿戴设备的研发工作。在工作过程中申请了多项国家专利,是国内可穿戴设备行业的领军人物。

 

目录

第1章C语言之定位1 
(视频总计24分钟,实例1个,拓展实例2个,技术解惑3个) 
1.1C语言的诞生2 
1.2第一印象的建立2 
1.3理解编译系统——学习的第一步3 
1.4揭开存储器的层次5 
1.5技术解惑6 
1.5.1学习C语言还有用吗6 
1.5.2怎样学好C语言7 
1.5.3学好C语言的建议7 
第2章C语言开发工具详解8 
(视频总计15分钟,技术解惑3个) 
2.1用DOS开发C程序9 
2.1.1安装Turbo C 3.09 
2.1.2认识Turbo C 3.0集成开发环境11 
2.1.3Turbo C 3.0开发演习14 
2.2在Windows环境下开发C程序15 
2.2.1Visual Studio 2010介绍15 
2.2.2安装Visual Studio 201015 
2.2.3认识Visual Studio 2010开发环境17 
2.3在Linux下开发C程序18 
2.3.1装备GCC18 
2.3.2GCC基本使用介绍20 
2.4技术解惑22 
2.4.1安装Visual Studio的几个常见问题22 
2.4.2有没有轻量级的、可以复制和粘贴代码的工具22 
2.4.3Windows7中安装Visual Studio的常见问题22 
第3章算法——抓住程序的灵魂23 
(视频总计25分钟,技术解惑2个) 
3.1我们对算法的理解24 
3.1.1为什么是程序灵魂24 
3.1.2何谓算法24 
3.1.3算法的特性25 
3.2算法表示法——流程图26 
3.3用计算机语言表示算法27 
3.4技术解惑27 
3.4.1初学者的一个困惑27 
3.4.2另外一种表示方法——N—S流程图28 
第4章程序员的基本素质培养29 
(视频总计15分钟,技术解惑1个) 
4.1养成好的命名习惯30 
4.2C程序文件结构30 
4.2.1C程序组成部分30 
4.2.2C程序格式总结31 
4.3养成好的C语言编程风格32 
4.3.1随时使用缩进格式32 
4.3.2注意大符号的位置32 
4.3.3函数的规则33 
4.3.4注意注释33 
4.4如何成为一名优秀的程序员33 
4.5技术解惑35 
第5章C语言语法36 
(视频总计23分钟,实例5个,拓展实例10个,技术解惑4个) 
5.1标识符和关键字37 
5.2最基本的数据类型37 
5.3常量和变量的深入理解38 
5.3.1常量详解39 
5.3.2变量详解40 
5.4整型数据42 
5.4.1整型常量详解42 
5.4.2整型变量详解44 
5.5实型数据46 
5.5.1实型常量详解46 
5.5.2实型变量详解46 
5.5.3了解实型常量的类型48 
5.6字符型数据48 
5.6.1字符常量详解49 
5.6.2字符串常量详解50 
5.6.3字符变量详解51 
5.7初始化变量52 
5.8整型、实型和字符型数据间的运算总结53 
5.8.1自动转换53 
5.8.2强制转换54 
5.9技术解惑54 
5.9.1C语言中无符号整型变量和有符号整型变量指什么?54 
5.9.2C语言中字符变量是怎么回事55 
5.9.3怎么理解字符型数据取值范围为0~25555 
5.9.4怎样将带小数点的字符型数据转换成浮点型的55 
第6章运算符和表达式56 
(视频总计29分钟,实例8个,拓展实例16个,技术解惑5个) 
6.1运算符和表达式的基本概况57 
6.1.1先看运算符的种类57 
6.1.2再看运算符的优先级58 
6.2算术运算符和算术表达式详解59 
6.2.1单目运算符59 
6.2.2双目运算符60 
6.3赋值运算符和赋值表达式60 
6.3.1基本赋值运算符61 
6.3.2复合赋值运算符61 
6.3.3赋值表达式62 
6.4关系运算符和关系表达式详解63 
6.4.1关系运算符63 
6.4.2关系表达式63 
6.5逻辑运算符和逻辑表达式详解64 
6.5.1逻辑运算符64 
6.5.2逻辑表达式64 
6.6逗号运算符和逗号表达式详解66 
6.6.1逗号运算符66 
6.6.2逗号表达式66 
6.7求字节数运算符详解67 
6.8技术解惑68 
6.8.1C语言运算符优先级的详细情况68 
6.8.2有少数运算符有规定表达式求值的顺序70 
6.8.3在C语言中可以进行混合运算吗70 
6.8.4在一个逻辑条件语句中常数项永远在左侧70 
6.8.5赋值处理的自动类型转换70 
第7章输入和输出72 
(视频总计25分钟,实例7个,拓展实例14个,技术解惑3个) 
7.1先来了解C语句初步73 
7.1.1C语句简介73 
7.1.2赋值语句74 
7.2打通任督二脉——数据输入和输出详解75 
7.2.1putchar函数(字符输出函数)76 
7.2.2getchar函数(字符输入函数)77 
7.2.3printf函数(格式输出函数)78 
7.2.4scanf函数(格式输入函数)81 
7.2.5puts函数(字符串输出函数)84 
7.2.6gets函数(字符串输入函数)84 
7.3技术解惑85 
7.3.1gets函数和scanf函数的区别85 
7.3.2克服gets函数的缺陷85 
7.3.3一个C语言的输入和输出问题87 
第8章流程控制88 
(视频总计32分钟,实例8个,拓展实例16个,技术解惑3个) 
8.1最常见的顺序结构89 
8.2选择结构89 
8.2.1单分支结构语句90 
8.2.2双分支结构语句91 
8.2.3还要使用多分支结构语句94 
8.2.4条件运算符和条件表达式96 
8.3循环结构详解97 
8.3.1for语句循环98 
8.3.2while语句99 
8.3.3do—while语句101 
8.3.4正确对待goto语句102 
8.3.5break/continue跳跃103 
8.3.6死循环/退出程序104 
8.4技术解惑105 
8.4.1循环中的低效问题105 
8.4.2分析C语言循环语句的效率105 
8.4.3使用for循环语句的注意事项106 
第9章数组和字符串——数据存在形式107 
(视频总计49分钟,实例13个,拓展实例26个,技术解惑4个) 
9.1一维数组108 
9.1.1定义一维数组108 
9.1.2引用一维数组元素108 
9.1.3初始化一维数组109 
9.2多维数组110 
9.2.1二维数组110 
9.2.2多维数组113 
9.3字符数组与字符串115 
9.3.1字符数组116 
9.3.2字符串与字符数组116 
9.3.3字符数组的输入和输出117 
9.4字符串处理函数119 
9.4.1测试字符串长度函数119 
9.4.2字符串大小写转换函数119 
9.4.3字符串复制函数120 
9.4.4字符串比较函数121 
9.4.5字符串连接函数123 
9.4.6其他的字符串函数124 
9.4.7将字符串转换成数值的函数124 
9.5字符处理函数125 
9.5.1字符检测函数详解125 
9.5.2字符大小写转换函数详解127 
9.6技术解惑128 
9.6.1数组的下标总是从0开始吗128 
9.6.2C语言对数组的处理是非常有效的吗128 
9.6.3初始化赋值一维数组的注意事项129 
9.6.4冒泡排序129 
第10章函数——C语言的CPU130 
(视频总计65分钟,实例14个,拓展实例28个,技术解惑10个) 
10.1C语言函数的基础知识131 
10.1.1函数的分类131 
10.1.2函数的定义132 
10.2必须知道的函数声明和函数原型133 
10.3函数的参数135 
10.3.1形参和实参详解135 
10.3.2可以将数组名作为函数参数136 
10.3.3可以将数组作为函数参数138 
10.4函数的返回值140 
10.5怎样实现函数的调用142 
10.5.1函数的调用格式142 
10.5.2函数调用的方式142 
10.5.3被调函数的声明方式144 
10.5.4对调用函数的方式进行深入分析144 
10.6函数的嵌套调用和递归调用146 
10.6.1函数嵌套调用详解146 
10.6.2函数递归调用详解148 
10.7必须了解变量的作用域和生存期151 
10.7.1变量作用域详解151 
10.7.2静态存储变量和动态存储变量153 
10.8谈谈C的内部函数和外部函数159 
10.8.1内部函数详解159 
10.8.2外部函数详解160 
10.9必须知道的库函数161 
10.10技术解惑162 
10.10.1深入分析项目文件162 
10.10.2要尽量避免不必要的函数调用164 
10.10.3请确保声明和定义是静态的,除非希望从不同的文件中调用该函数164 
10.10.4避免过长的main(函数)164 
10.10.5函数的地址本身也是数据166 
10.10.6什么时候说明函数167 
10.10.7一个函数可以有多少个参数168 
10.10.8如果一个函数没有返回值,是否需要加入return语句168 
10.10.9在程序退出main函数之后还有可能执行一部分代码168 
10.10.10exit()函数和return语句有什么不同169 
第11章指针是学习C语言的最大障碍170 
(视频总计61分钟,实例14个,拓展实例28个,技术解惑8个) 
11.1基本概念171 
11.2变量的指针和指向变量的指针变量171 
11.2.1声明指针变量172 
11.2.2指针变量的初始化172 
11.2.3指针变量的引用173 
11.2.4关于指针运算符的说明174 
11.2.5指针变量的运算175 
11.2.6指针变量作为函数参数176 
11.2.7void类型的指针179 
11.3指针和数组180 
11.3.1数组元素的指针181 
11.3.2指向一维数组元素的指针变量182 
11.3.3通过指针引用数组元素182 
11.3.4数组名作函数参数185 
11.4指针和多维数组187 
11.4.1多维数组的地址187 
11.4.2指向多维数组的指针变量189 
11.5指针和字符串192 
11.5.1指针访问字符串192 
11.5.2字符串指针作函数参数193 
11.5.3使用字符串指针变量与字符数组的区别194 
11.6指针数组和多级指针195 
11.6.1指针数组195 
11.6.2多级指针的定义和应用196 
11.6.3指向指针的指针198 
11.6.4main函数的参数198 
11.7指针函数和函数指针199 
11.7.1指针函数199 
11.7.2函数指针200 
11.8技术解惑202 
11.8.1指针初始化时应注意的问题202 
11.8.2指针赋值时应注意的问题203 
11.8.3指针用于数组时应注意的问题204 
11.8.4结构中使用指针时应注意的问题204 
11.8.5避免不必要的内存引用205 
11.8.6避免悬空指针和野指针205 
11.8.7数组下标与指针的效率解析205 
11.8.8使用指针时的常见错误206 
第12章数据的熔炉——结构体、共用体和枚举208 
(视频总计49分钟,实例12个,拓展实例24个,技术解惑4个) 
12.1结构体209 
12.1.1定义结构体类型209 
12.1.2定义结构体类型变量209 
12.1.3引用结构体变量211 
12.1.4初始化结构体变量213 
12.2进一步谈结构体数组214 
12.2.1定义结构体数组214 
12.2.2初始化结构体数组215 
12.2.3引用结构体数组216 
12.3详谈结构体指针217 
12.3.1定义结构体指针变量217 
12.3.2初始化结构体指针变量218 
12.3.3引用结构体指针变量218 
12.3.4指向结构变量的指针219 
12.3.5指向结构体数组的指针220 
12.4在函数中使用结构体220 
12.4.1结构体变量和结构体指针可以作为函数参数221 
12.4.2函数可以返回结构体类型的值222 
12.5共用体(联合)223 
12.5.1定义共用体和共用体变量223 
12.5.2引用和初始化共用体变量224 
12.6枚举225 
12.6.1定义枚举类型225 
12.6.2定义枚举变量226 
12.6.3引用枚举变量227 
12.7为什么需要用typedef定义类型228 
12.7.1类型定义符typedef基础228 
12.7.2使用typedef229 
12.8技术解惑230 
12.8.1可以省略结构名吗230 
12.8.2是否可以定义一种通用数据类型方便地存储任意类型的数据呢230 
12.8.3分析结构和共用体的区别231 
12.8.4一个定义C结构体的问题231 
第13章链表232 
(视频总计25分钟,实例4个,拓展实例8个,技术解惑3个) 
13.1动态内存分配233 
13.1.1为什么用动态内存分配233 
13.1.2如何实现动态内存分配及其管理233 
13.2链表详解236 
13.2.1链表基本介绍236 
13.2.2单向链表237 
13.2.3创建一个链表239 
13.2.4删除整个链表240 
13.2.5在链表中插入节点240 
13.2.6在链表中删除节点241 
13.2.7双向链表242 
13.2.8循环链表243 
13.3技术解惑244 
13.3.1一段代码对链表的总结244 
13.3.2面试题—判断单链表是否有环248 
13.3.3面试题—实现单链表逆置248 
第14章位运算250 
(视频总计22分钟,实例2个,拓展实例4个,技术解惑3个) 
14.1位运算符和位运算251 
14.1.1按位与运算(&)251 
14.1.2按位或运算252 
14.1.3按位异或运算252 
14.1.4取反运算253 
14.1.5左移运算253 
14.1.6右移运算254 
14.1.7位运算应用实例254 
14.2位域256 
14.2.1位域的定义和位域变量的说明256 
14.2.2位域的使用257 
14.3技术解惑257 
14.3.1二进制补码运算公式257 
14.3.2面试题:从某个数中取出指定的某些位258 
14.3.3位域的内存对齐原则258 
第15章预编译处理259 
(视频总计27分钟,实例3个,拓展实例6个,技术解惑6个) 
15.1预编译基础260 
15.2宏定义260 
15.2.1不带参数的宏定义260 
15.2.2带参数的宏定义262 
15.2.3字符串化运算符264 
15.2.4并接运算符264 
15.3文件包含详解265 
15.4条件编译267 
15.4.1#ifdef…#else…#endif命令267 
15.4.2#ifdefined…#else…#endif268 
15.4.3#ifndef…#else…#endif268 
15.4.4#if!defined…#else…#endif268 
15.4.5#ifdef…#elif…#elif…#else…#endif269 
15.5技术解惑270 
15.5.1还有其他预编译指令吗270 
15.5.2带参的宏定义和函数不同271 
15.5.3总结C语言中的预处理指令271 
15.5.4预编译指令的本质是什么271 
15.5.5sizeof(int)在预编译阶段是不会被求值的272 
15.5.6多行预处理指令的写法272 
第16章文件操作273 
(视频总计56分钟,实例14个,拓展实例28个,技术解惑5个) 
16.1C领域中的文件274 
16.1.1文本文件274 
16.1.2文件分类275 
16.2文件指针275 
16.3实现文件打开与关闭276 
16.3.1打开文件276 
16.3.2关闭文件278 
16.4文件读写详解279 
16.4.1字符读写函数280 
16.4.2字符串读写函数282 
16.4.3格式化读写函数283 
16.4.4数据块读写函数284 
16.4.5其他的读写函数286 
16.5必须掌握文件的随机读写287 
16.5.1fseek函数详解287 
16.5.2rewind函数详解289 
16.5.3ftell函数详解289 
16.6文件管理函数详解290 
16.6.1删除文件290 
16.6.2重命名文件291 
16.6.3复制文件291 
16.7文件状态检测函数详解293 
16.7.1feof函数详解293 
16.7.2ferror函数详解293 
16.7.3clearerr函数详解294 
16.8Win32API中的文件操作函数294 
16.8.1创建和打开文件295 
16.8.2读取、写入和删除文件295 
16.9技术解惑296 
16.9.1文件指针和文件内部的位置指针是一个含义吗296 
16.9.2fseek函数的换行问题296 
16.9.3怎样解决gets函数的溢出问题296 
16.9.4feof函数会多读一个数据吗297 
16.9.5流和文件有何关系297 
第17章错误和程序调试298 
(视频总计9分钟,技术解惑3个) 
17.1常见错误分析299 
17.1.1语法错误299 
17.1.2逻辑错误(语义错误)300 
17.1.3内存错误303 
17.2错误的检出与分离308 
17.3调试时的注意事项309 
17.3.1上机前要先熟悉程序运行的环境309 
17.3.2程序设计过程中要为程序调试做好准备309 
17.4技术解惑310 
17.4.1编译通过并不代表运行正确310 
17.4.2两段代码的编译差别310 
17.4.3调试程序的方法与技巧310 
第18章组件技术313 
(视频总计19分钟) 
18.1组件技术概述314 
18.2体系结构314 
18.2.1体系结构的概念314 
18.2.2CORBA技术体系315 
18.2.3DCOM技术319 
第19章C语言高级编程技术322 
(视频总计33分钟,实例12个,拓展实例8个) 
19.1何谓C的高级编程技术323 
19.2分析文本的屏幕输出和键盘输入323 
19.2.1实现文本的屏幕输出323 
19.2.2实现键盘输入329 
19.2.3应用实例330 
19.3分析图形显示方式和鼠标输入332 
19.3.1初始化图形模式332 
19.3.2清屏和恢复显示函数详解334 
19.3.3建立独立图形运行程序335 
19.3.4基本绘图函数详解335 
19.3.5线性函数详解339 
19.3.6颜色控制函数详解340 
19.3.7分析填色函数和画图函数344 
19.3.8图形窗口函数详解347 
19.3.9分析图形方式下的文本输出函数347 
19.4菜单设计350 
19.4.1实现下拉式菜单350 
19.4.2实现弹出式菜单353 
第20章网络编程技术358 
(视频总计33分钟,实例3个,拓展实例2个) 
20.1OSI七层网络模型359 
20.2TCP/IP子协议360 
20.2.1IP协议361 
20.2.2TCP协议362 
20.2.3UDP协议363 
20.2.4ICMP协议363 
20.3使用C语言开发网络项目363 
20.3.1网络编程方式364 
20.3.2网络通信基本流程364 
20.3.3搭建开发环境365 
20.3.4两个常用的数据结构365 
20.3.5WindowsSockets基础365 
20.4常用的Winsock函数366 
20.4.1WSAStartup函数366 
20.4.2socket函数366 
20.4.3inet_addr函数367 
20.4.4gethostbyname函数367 
20.4.5bind函数367 
20.4.6connect函数367 
20.4.7select函数367 
20.4.8recv函数368 
20.4.9sendto函数368 
20.5MAC地址368 
20.6NetBIOS编程369 
20.6.1处理过程369 
20.6.2NetBIOS命令369 
20.6.3NetBIOS名字解析370 
20.6.4何谓NetBEUI372 
20.6.5NetBIOS范围373 
20.6.6NetBios控制块373 
20.7实战演练——获取当前机器MAC地址373 
20.7.1选择开发工具373 
20.7.2设计MFC窗体373 
20.7.3具体编码374 
第21章初入江湖——游戏项目设计381 
(视频总计45分钟) 
21.1游戏功能描述382 
21.2游戏总体设计382 
21.2.1功能模块设计383 
21.2.2数据结构设计385 
21.2.3构成函数介绍386 
21.3游戏具体实现387 
21.3.1预处理387 
21.3.2主函数389 
21.3.3初始化界面处理390 
21.3.4时钟中断处理391 
21.3.5成绩、速度和帮助处理391 
21.3.6满行处理392 
21.3.7方块显示和消除处理394 
21.3.8游戏方块操作判断处理395 
第22章风云再起——网络项目设计398 
(视频总计28分钟) 
22.1系统功能描述399 
22.2系统总体设计399 
22.2.1功能模块设计399 
22.2.2数据结构设计401 
22.2.3构成函数介绍402 
22.3系统具体实现403 
22.3.1预处理403 
22.3.2初始化处理404 
22.3.3控制模块405 
22.3.4数据报解读处理406 
22.3.5Ping测试处理408 
22.3.6主函数409

我来说两句

本书评论

共有 0 条评论
图书分类
我的书库手机端
帮助中心
会员登录 ×
新用户注册 ×