C++指针变量详解:引用与赋值

需积分: 9 5 下载量 198 浏览量 更新于2024-07-13 收藏 8.66MB PPT 举报
"该资源是一份关于C++的课件,特别关注了指针变量的引用这一主题。课件强调指针变量只能存储地址,不能赋予非地址数据。此外,展示了如何通过指针变量访问和修改内存中的值,以及如何进行指针变量的赋值和引用操作。内容还涉及C++语言的发展历史,包括C语言的诞生及其向C++的演变,以及C语言的主要特点,如结构化、灵活性、高效性和良好的可移植性。" 在C++编程中,指针是极其重要的概念,它允许程序员直接操控内存,提高程序的效率。指针变量是一个特殊的变量,它存储的是另一个变量的地址,而不是普通的数值。在提供的代码示例中,`int *p, i; p=100;` 是非法的,因为尝试将整数100赋值给指针变量`p`,而`p`应该存放的是一个地址。正确的做法是`p = &i;`,将变量`i`的地址赋值给`p`。 指针变量的引用是指通过`*`操作符来访问指针所指向的内存位置上的值。例如,`cout << *p1 << '\t' << *p2 << endl;` 这一行代码会打印出`p1`和`p2`所指向的变量`a`和`b`的值。在给出的示例程序中,`p1`和`p2`分别被初始化为变量`a`和`b`的地址,因此`*p1`和`*p2`分别表示变量`a`和`b`。 C++起源于C语言,由Bjarne Stroustrup在20世纪80年代为添加面向对象特性而设计。C++不仅保留了C语言的高效和灵活性,还引入了类、对象、模板、异常处理等高级特性,使得它成为一个更加强大且复杂的编程语言。C++程序设计的一个关键原则是“你不会遇到未预期的行为”,这需要程序员对指针和其他低级概念有深入的理解。 C语言的主要特点包括: 1. 结构化编程:C语言鼓励使用函数和块结构,有助于编写清晰、模块化的代码。 2. 灵活性与高效性:C语言提供了丰富的运算符,支持位操作,允许直接访问内存,因此编写的程序运行效率高。 3. 可移植性:C语言的编译器可以在多种不同的计算机平台上运行,使得程序能够在不同的硬件上轻松迁移。 4. 语法自由度:C语言的语法相对宽松,允许程序员有很大的设计自由度,但也意味着需要更多的调试工作。 对于初学者来说,理解和掌握C++中的指针是挑战性的,但也是必要的,因为它对于理解底层内存管理和高效的编程至关重要。学习过程中,不仅要熟悉指针的使用,还要了解如何避免常见的指针错误,如空指针引用、野指针和内存泄漏等问题。通过实践和不断学习,可以逐步掌握这个强大的工具。