王桂林老师详解C语言进阶:数据类型、进程空间与数组指针

需积分: 13 22 下载量 146 浏览量 更新于2024-07-18 1 收藏 2.56MB PDF 举报
王贵林老师的"C语言进阶篇"PDF文档是一份深入讲解C语言高级概念和技术的教程。该文档由王桂林原创,旨在帮助学习者提升C语言的理解和实践能力。主要内容涵盖以下几个方面: 1. 数据类型与内存管理: - 学习了C语言中的基本数据类型,包括内存的分配和管理,如整型、浮点型、字符型等。介绍了补码的概念,特别是8位char类型的补码表示,以及数据类型的重要性,类型转换的原理和方式,包括隐式和显式类型转化。 2. 进程与程序的区别: - 对进程空间进行了详细阐述,区分了程序和进程的概念,解释了它们之间的关系。讨论了数据在进程空间中的存储方式,包括数据结构和存储示意图。 3. 数组的使用: - 从一维数组出发,讲解了数组的本质、初始化、访问方法以及作为参数传递。接着,扩展到二维数组,重点介绍了其初始化和线性存储方式。此外,还涉及数组指针的概念,纠正了一维数组名的常见误解,并展示了其在实际编程中的应用。 4. 指针概念: - 讲解了内存编址与变量地址的关系,深入剖析指针在C语言中的作用。通过实例让读者理解指针如何指向内存地址,以及如何利用指针进行操作。 整个文档以实践为导向,通过丰富的例子和练习题帮助读者巩固理论知识,适合有一定C语言基础的学习者进行进阶学习。王桂林老师提供的技术支持和联系方式便于读者在学习过程中寻求帮助和交流。通过这份文档,读者可以深化对C语言高级特性的理解和掌握,提升编程技能。
2015-01-23 上传
很多同学对咱们C语言的课程、学习存在着很多误解,而且很多同学还不知道《C语言高级教程》后面的课程安排是什么,因此这里一并做一个说明。有同学问“别人都说开发数据库系统、Web系统还是Java、C#等最流行,咱们用C语言学了开发也不是浪费吗?”、“C语言不是做嵌入式开发、操作系统等底层的东西吗?”、“我们为什么不讲C语言的嵌入式开发?”、“人家都学Web开发,咱们这学C语言开发C/S的程序不是落伍了吗?”。 确实在实际工作中,由于C语言的门槛比较高,很少有实际项目用C语言进行数据库系统、Web系统等的开发的。但是我不止一次强调“学习时学东西和工作时学东西是不一样的”。 工作以后选用的技术、语言一定是选择做合适、最方便做所从事方面的,比如开发Web程序肯定首选PHP、Java、.net,开发底层系统肯定首选C/C++,开发桌面系统肯定首选VB、Delphi,也就是“用合适的语言做合适的事情”; 但是对于在校生来说则是“用最熟悉的语言做所有事情”。初学编程的人最容易在语言的表层陷入 太长时间,如果要学数据库开发了就要去学Delphi、PB,又要学Web开发了就又去学Java、.net,又要学底层开发了就又去学C/C++, 可是每门语言都没深入,最后真正要学的数据库开发、Web开发、底层 开发等等没怎么学会,倒是把大量的时间浪费在学这些基础语法上,浪费了宝贵的时间, 这也是我痛 恨目前很多大学课程安排的一个原因。因此我的倡导就是对于在校生来说则是“用最熟悉的语言做所 有事情”,我甚至建议大学只学一门C语言就够了,然后就教大家用C语言做所有的方面。