C++编程:求两数大者示例与C语言特性讲解

需积分: 10 0 下载量 15 浏览量 更新于2024-08-19 收藏 8.81MB PPT 举报
本资源是一份关于C++程序设计的教程,基于谭浩强编著的教材,旨在教授如何编写一个简单的程序来找出两个输入数中的较大值。首先,我们看到的是一个主函数`main()`的示例代码,其中涉及到指针的概念。 1. **变量声明和初始化**: - 函数开始,定义了两个整型指针`p1`和`p2`,它们用于存储数值。这里没有直接初始化,而是使用`new`关键字动态分配内存,因为题目中提到了`new int *p1`和`new int *p2`,这意味着这两个指针将分别指向新创建的整数。所以,`p1 = new int`和`p2 = new int`应该是代码中缺失的部分。 2. **输入值**: - 程序接着提示用户输入两个数,`cin>>*p1`和`cin>>*p2`用于读取输入并存储在对应的指针所指向的位置。这里的`*`操作符用于解引用指针,获取实际的数值。 3. **比较与赋值**: - 使用条件语句`if (*p2 > *p1)`检查`p2`指向的数值是否大于`p1`指向的数值。如果是,则将较大的值赋给`p1`所指向的位置,即`*p1 = *p2`。 4. **释放内存**: - 在找到最大值后,由于`p2`不再有用,需要使用`delete p2`释放之前动态分配的内存,以防止内存泄漏。 5. **输出结果**: - 最后,程序输出最大值,`cout << “max=” << *p1 << endl;`,`*p1`表示当前`p1`指针所指向的数值,即两个输入数中的较大者。 6. **C++语言背景**: - 教材介绍了C++语言的发展历史,包括BCPL、B语言和C语言,以及C++如何在C语言的基础上扩展和完善,成为结构化、灵活且具有高效性的编程语言。 7. **C++语言特性**: - C++结合了高级语言的抽象性和汇编语言的效率,提供了丰富的运算符和数据结构,使得程序表述灵活且性能良好。同时,虽然C++的语法结构相对宽松,但也可能导致初学者在编写和调试程序时遇到挑战。 这个代码片段是C++编程入门级别的教学,展示了如何使用指针来比较和交换两个数,以及C++语言的基本概念和优势。通过这个例子,读者可以学习如何在C++中进行内存管理,以及如何利用结构化编程思想解决问题。