温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
轻松学C+
by
邹国华
轻松
C+
国华
内容简介 本书由浅入深,全面、系统地介绍了 C+编程语言。本书最大的特色就是提供了大量的插图,一改过去编程书籍枯燥乏味的文字讲解,利用各种说明插图和运行结果示意图,生动形象地再现了 C+语言各项内容,使读者能够轻松地掌握学习内容。另外,作者专门为每一章编写了一些习题,以便读者对该章的学习水平进行检测。本书还录制了大量的配套教学视频,这些视频和书中的实例源代码一起收录于本书的配书光盘中。本书共分 4 篇。第 1 篇是 C+概述篇,主要介绍 C+历史、开发环境搭建、编写第一个 C+程序等知识;第2 篇是 C+基础语法篇,主要介绍数据的表示、语句、控制结构、数组、函数、指针、引用、复合数据类型等内容;第 3 篇是 C+面向对象篇,主要介绍类、对象、继承、派生、多态、运算符重载、类模板等内容;第 4 篇是C+应用技术篇,详细介绍了输入/输出流、预处理、宏、标准模板库、程序调试、异常处理、文件等技术。本书涉及面广,从基本操作到高级技术和核心原理,再到项目开发,几乎涉及 C+编程的所有重要知识。本书适合所有想全面学习 C+的人员阅读,也适合各种使用 C+开发的工程技术人员使用。对于经常使用 C+做开发的人员,更是一本不可多得的案头必备参考书。未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。版权所有,侵权必究。图书在版编目(CIP)数据 轻松学 C+/邹国华编著.北京:电子工业出版社,2013.5(轻松学开发)ISBN 978-7-121-19809-0 .轻.邹.C 语言程序设计.TP312 中国版本图书馆 CIP 数据核字(2013)第 048269 号 策划编辑:胡辛征 责任编辑:高洪霞 特约编辑:赵树刚 文字编辑:马洪涛 印 刷:装 订:出版发行:电子工业出版社 北京市海淀区万寿路 173 信箱 邮编 100036 开 本:8601092 1/16 印张:26.25 字数:672 千字 印 次:2013 年 5 月第 1 次印刷 印 数:4000 册 定价:55.00 元(含 DVD 光盘 1 张)凡所购买电子工业出版社图书有缺损问题,请向购买书店调换。若书店售缺,请与本社发行部联系,联系及邮购电话:(010)88254888。质量投诉请发邮件至 ,盗版侵权举报请发邮件至 。服务热线:(010)88258888。前 言 从 20 世纪 80 年代 C+语言诞生以来,已经有二十多年了。在这期间,C+语言以简洁、高效的特点,广泛应用于不同的开发环境中。由于 C+的高运行效率和高开发效率,在不同的行业领域中都有卓越的表现。这些领域包括硬件、系统级的开发,也包括游戏、浏览器等普通软件。在当前网络应用爆发式发展中,C+语言作为核心开发语言之一将继续闪烁着璀璨的光芒。笔者结合自己多年的 C+开发经验和心得体会,花费了一年多的时间编写本书。希望各位读者能在本书的引领下跨入 C+编程世界的大门,并成为一名开发高手。本书最大的特色就是结合大量的说明插图,全面、形象、系统、深入地介绍了 C+语言,并以大量实例贯穿于全书的讲解之中。学习完本书后,读者可以具备灵活应用 C+语言的能力。本书特色 1.大量教学插图,读书学习不再枯燥乏味 本书最大的特点就是通篇采用图片讲解,将传统的文字讲解转换为各种形式的图形图表,最大限度地提升读者的阅读兴趣,让读者在潜移默化中掌握 C+语言的开发精髓。2.配有大量多媒体语音教学视频,体验全新教学课堂 作者专门录制了大量的配套多媒体语音教学视频,以便让读者更加轻松、直观地学习本书内容,提高学习效率。这些视频与本书源代码一起收录于配书光盘中。3.讲解由浅入深,循序渐进,适合各个层次的读者阅读 本书从 C+语言的基础开始讲解,逐步深入到 C+语言的高级开发技术及应用,内容梯度从易到难,讲解由浅入深,循序渐进,适合各个层次的读者阅读。4.贯穿大量的开发实例和技巧,迅速提升开发水平 本书在讲解知识点时贯穿了大量短小精悍的典型实例,并给出了大量的开发技巧,以便让读者更好地理解各种概念和开发技术,体验实际编程,迅速提高开发水平。本书内容及体系结构 第 1 篇 C+概述篇(第 1 章)本篇主要内容包括:C+发展历程、开发环境搭建、第一个 C+程序、程序结构等。通过本篇的学习,读者可以掌握 C+语言的特点、开发环境的配置和应用过程。IV 第 2 篇 C+基础语法篇(第 28 章)本篇主要内容包括:数据类型、变量、常量、语句、控制结构、数组、函数、指针、引用、复合数据类型等内容。通过本篇的学习,读者可以基本掌握 C+面向过程编程的语法知识。第 3 篇 C+面向对象篇(第 913 章)本篇主要内容包括:类、对象、继承、派生、多态、运算符重载、类模板等技术。通过本篇的学习,读者可以掌握 C+面向对象开发的相关知识。第 4 篇 C+应用技术(第 1418 章)本篇主要内容包括:输入/输出流、预处理、宏、标准模板库 STL、程序调试、异常处理、文件等技术。通过本篇的学习,读者可以掌握 C+项目开发中的各项技术。本书读者对象 从未接触过 C+的初学者。了解一些 C+知识,希望进一步学习的自学者。想学习一门技术,以方便找工作的求职者。C+开发爱好者。大中专院校的学生和相关授课教师。社会培训班学员。C+专业开发人员。需要一本案头必备手册的程序员。编著者 2013 年 1 月 目 录 第 1 篇 C+概述篇 第 1 章 C+基础.2 1.1 C+概述.2 1.1.1 C+语言发展历程.2 1.1.2 C+语言特点.2 1.1.3 C+程序开发基本过程.3 1.2 C+开发环境的搭建.4 1.2.1 Visual C+6.0 安装.4 1.2.2 Visual C+6.0 开发环境简介.6 1.3 第一个 C+程序.6 1.3.1 创建源程序.6 1.3.2 编译链接.9 1.3.3 调试运行.10 1.3.4 典型 C+程序的执行过程.12 1.3.5 使用 C+解决问题的流程.12 1.4 C+程序的结构.14 1.4.1 注释.14 1.4.2 编译预处理和新旧标准.14 1.4.3 程序主体.15 1.5 小结.15 1.6 习题.15 第 2 篇 C+基础语法篇 第 2 章 数据的表示.18 2.1 数.18 2.1.1 二进制.18 2.1.2 八进制.19 2.1.3 十六进制.20 2.2 数据的描述.21 2.2.1 C+的构词方式标识符.21 VI 2.2.2 特殊的标识符关键字.22 2.2.3 整数类型.23 2.2.4 浮点类型.24 2.2.5 字符类型.25 2.2.6 布尔类型.27 2.3 变量.27 2.3.1 变量的声明和定义.28 2.3.2 不变的变量常量.28 2.4 小结.29 2.5 习题.29 第 3 章 程序的基本单位语句.33 3.1 语句的构成.33 3.1.1 表达式语句.33 3.1.2 输入/输出语句.33 3.2 运算符.35 3.2.1 运算符概述.35 3.2.2 运算符的分类.35 3.3 赋值运算符.36 3.3.1 赋值运算符“=”.36 3.3.2 数据类型转换隐式转换.37 3.3.3 显式转换.37 3.4 其他常用运算符.39 3.4.1 算术运算符.39 3.4.2 自增自减运算符.40 3.4.3 位运算符.41 3.4.4 复合赋值运算符.43 3.4.5 逗号运算符.43 3.4.6 sizeof 运算符.44 3.4.7 逻辑运算符.45 3.4.8 运算符的优先级和结合性.45 3.5 语句块.48 3.5.1 语句块的构成.48 3.5.2 作用域变量的作用范围.48 3.6 小结.49 3.7 习题.49 第 4 章 程序控制结构.56 4.1 语句块的执行方式顺序结构.56 4.2 条件的表达.56 4.2.1 单一条件的表达关系运算符.56 VII 4.2.2 多条件的表达逻辑运算符.57 4.3 选择结构.58 4.3.1 最简单的选择条件运算符.58 4.3.2 单分支条件语句if 语句.59 4.3.3 双分支条件语句ifelse 语句.61 4.3.4 多重 ifelse 语句.62 4.3.5 情况语句switch 语句.64 4.3.6 应用实例.65 4.4 循环结构.66 4.4.1 for 语句.67 4.4.2 while 语句.68 4.4.3 dowhile 语句.69 4.4.4 多重循环.70 4.4.5 应用举例.71 4.5 意外情况的表达转向语句.72 4.5.1 跳出语句break 语句.72 4.5.2 继续语句continue 语句.72 4.5.3 转向语句goto.73 4.6 综合实例.74 4.7 小结.76 4.8 习题.76 第 5 章 数组.81 5.1 数组概述.81 5.2 数组的来源.82 5.3 一维数组.83 5.3.1 一维数组的声明和定义.83 5.3.2 一维数组的引用.84 5.4 二维数组.86 5.4.1 二维数组的声明和定义.86 5.4.2 二维数组的初始化.86 5.4.3 二维数组的引用.88 5.4.4 多维数组在内存中如何排列元素.89 5.5 字符串.90 5.5.1 字符数组.90 5.5.2 字符串的存储形式.91 5.5.3 字符数组与字符串的区别.91 5.5.4 字符串处理函数.92 5.6 综合实例杨辉三角.94 5.7 小结.97 VIII 5.8 习题.97 第 6 章 函数.106 6.1 函数概述.106 6.1.1 函数的基本概念.106 6.1.2 函数的分类.107 6.2 函数的组成.107 6.2.1 函数头.108 6.2.2 函数体.108 6.3 函数的声明和定义.110 6.3.1 函数原型函数的声明.110 6.3.2 函数实现函数的定义.111 6.4 函数参数传递.112 6.4.1 函数的形参和实参.112 6.4.2 值传递.113 6.5 函数的调用.115 6.5.1 函数的调用过程.115 6.5.2 无参函数的调用.115 6.5.3 带参函数的调用.116 6.5.4 默认形参值的调用.117 6.5.5 嵌套调用.120 6.5.6 数组作为函数参数.121 6.6 递归函数.123 6.6.1 直接递归.124 6.6.2 间接递归.125 6.7 main()函数.127 6.7.1 不带参数的 main()函数.127 6.7.2 带参数的 main()函数.127 6.8 函数的综合应用.128 6.9 小结.128 6.10 习题.128 第 7 章 指针与引用.136 7.1 指针概述.136 7.1.1 指针的基本概念.136 7.1.2 定义指针变量.137 7.1.3 初始化指针.138 7.2 指针的访问.139 7.2.1 指针的值.140 7.2.2 访问指针数据.140 7.2.3 小结指针 p.141 IX 7.3 指针的算术运算.142 7.3.1 指针与整数的加减运算.142 7.3.2 指针加减 1 运算.143 7.3.3 指针的相减运算.144 7.4 特殊指针.144 7.4.1 数组指针.144 7.4.2 指向函数的指针函数指针.145 7.4.3 指针数组.146 7.4.4 二级指针指针的指针.147 7.4.5 多级指针二级以上的指针.148 7.5 指针的应用.149 7.5.1 指向一维数组的指针.149 7.5.2 指向二维数组的指针.150 7.5.3 指向字符串的指针.152 7.5.4 指针作为函数参数.153 7.5.5 指针作为函数的返回值指针函数.155 7.5.6 动态内存分配.156 7.6 引用.158 7.6.1 引用的应用.158 7.6.2 引用与指针.159 7.6.3 引用作为函数参数.160 7.7 小结.161 7.8 习题.162 第 8 章 复合数据类型.169 8.1 结构体.169 8.1.1