C++编程:字符指针与字符串

需积分: 10 10 下载量 13 浏览量 更新于2024-08-23 收藏 8.66MB PPT 举报
"面向对象程序设计是C++的核心特性,由谭浩强教授讲解的课程着重于这一主题。在本教学PPT中,特别关注了如何用字符指针表示字符串,这是C++编程中的一个重要概念。 在C++中,字符串通常是由字符数组组成的,但在某些情况下,我们使用字符指针来表示字符串。在提供的代码示例中,`char *string="I love China";`定义了一个字符指针`string`,并将其指向了一个字符串常量"I love China"的首地址。这里的"I love China"是一个字符串字面量,它在内存中被存储为一个字符序列,以`\0`(空字符)作为结束标志。 在C++中,字符串常量是不可变的,意味着一旦创建,就不能修改。字符指针变量`string`只是一个指向这个常量内存位置的引用,而不是实际的字符串内容。当我们使用`cout<<string;`打印字符串时,实际上是输出了指针所指向的内存区域的字符序列,即"I love China"。 在第一章C++概述中,介绍了C++语言的发展历程,它起源于C语言,由B语言和BCPL语言逐步演变而来。C++在C语言的基础上增加了面向对象编程的特性,使得它能够更好地支持类、对象、封装、继承和多态等概念。C语言以其结构化、高效以及良好的可移植性而受到广泛欢迎,而C++则在这些优点上添加了更高级的编程范式,提高了代码的重用性和可维护性。 C语言的特点包括: 1. 结构化:它的语法清晰,允许模块化和结构化编程,有助于写出易于理解和维护的代码。 2. 高级与低级语言的结合:C语言提供了丰富的运算符,包括位运算,使得它既可以处理复杂的逻辑,也能进行底层的硬件控制。 3. 可移植性:C语言编写的程序可以轻松地在不同的计算机平台之间移植。 4. 灵活度:C语言的语法相对较宽松,允许程序员有较大的自由度,但也增加了学习和调试的难度。 尽管C语言的学习曲线较陡峭,尤其是对于初学者来说,但掌握了C++的基本语法和特性,就能够编写出高效且强大的程序。在实际编程过程中,理解字符指针如何与字符串常量交互是非常基础且重要的技能,这在谭浩强教授的C++面向对象程序设计课程中得到了详细阐述。"