
C++教程:形参实参使用指针详解
下载需积分: 18 | 8.81MB |
更新于2024-08-24
| 198 浏览量 | 举报
收藏
"形参实参都用指针变量-C++教程-谭浩强"
在C++编程中,形参(formal parameter)和实参(actual parameter)是函数调用时涉及的重要概念。形参是函数定义时声明的变量,它们在函数内部使用,而实参则是函数调用时传递给形参的值。在这个特定的例子中,形参和实参都是指针变量,这意味着在函数调用时,传递的是内存地址而非实际的值。
在给出的代码段中,`main()` 函数定义了一个整型数组 `a` 和一个指向整型的指针 `p`,然后将 `p` 指针赋值为数组 `a` 的首地址。这样,`p` 就指向了数组的第一个元素。之后,`f()` 函数被调用,传入了指针 `p` 和整型值 `10`。在 `f()` 函数内部,形参 `x` 是一个整型指针,接收 `p` 的值,即数组 `a` 的首地址;形参 `n` 是一个整型,接收 `10` 的值。这样,`f()` 函数可以通过形参 `x` 访问和操作传入的数组。
C++ 教程通常强调,当使用指针作为参数时,实参指针变量在调用函数之前必须被赋值,因为未初始化的指针可能含有随机的内存地址,这可能导致程序崩溃或者出现未定义的行为。在本例中,`p=a;` 确保了 `p` 已经指向了一个有效的内存位置。
C++ 语言起源于C语言,由C语言发展而来,它在C的基础上增加了面向对象的特性,使得编程更加灵活和高效。C++ 保留了C语言的许多优点,如简洁的语法、高效的执行和良好的可移植性。C++ 的特点包括:
1. 结构化编程:C++ 支持结构化编程原则,可以编写模块化的程序,便于理解和维护。
2. 高级和低级语言特性结合:C++ 提供丰富的运算符,支持位运算,同时允许直接访问内存,类似于汇编语言。
3. 数据结构和算法的强大支持:C++ 支持动态数据结构,如类和模板,适合复杂的数据结构设计。
4. 可移植性:C++ 程序在不同平台间的可移植性较强,编写的程序可以在多种计算机系统上运行。
5. 程序设计自由度大:C++ 允许程序员自由选择编程风格,但这也意味着对程序员的要求更高,需要更深入理解语言规则以避免错误。
对于初学者来说,C++ 的学习曲线可能较为陡峭,尤其是指针部分,因为指针的使用需要对内存管理和地址概念有清晰的理解。不过,熟练掌握指针能够极大地提升编程能力,特别是在处理高效数据结构和算法时。调试C++程序时,可能需要借助调试器来追踪变量状态,以找出潜在的错误。C++ 是一种强大的编程语言,适用于各种领域,包括系统编程、游戏开发、科学计算等。
相关推荐










深夜冒泡
- 粉丝: 24
最新资源
- 数据结构经典例题与答案大集合
- AJAX中文教程 CHM版:深入浅出网页开发技术
- 在Windows命令行中发送电子邮件的简易方法
- IIS 5.1安装包:兼容XP系统与RAID控制器
- 实例详解:如何用JavaMail接收邮件
- 初学者入门级人力资源管理系统功能详解
- Mento4.0实现锐捷客户端破解上网
- Linux初学者必备:全方位指令大全手册
- 炬力固件提取工具4.0版发布:轻松获取MP3固件
- Ogre 3D引擎中文完整参考手册
- VC++实现基本图像处理的DIBDisplay源码解析
- ZEM100指纹模块底层程序开发指南
- 深入探究RSA算法的加密与解密技术细节
- C#实现QQ面板控件源码解析
- VC中创建不规则窗体的技巧与实践
- Java实用工具类UtilClass深度解析
- 6.5辅助优化设计教材代码完整解析
- C语言学生成绩管理系统示例分析
- VC++深入解析与代码案例
- 互动动画详解:数据结构学习向导
- C#程序实现查看本机已启动线程的指南
- 掌握CSS、JS、VBS及网页配色技术的四大CHM手册
- 掌握SMTP协议:Java实现邮件接收实例教程
- 《FORTRAN算法集》教材源代码下载