C++指针与链表基础复习及习题解析
需积分: 10 190 浏览量
更新于2024-09-12
2
收藏 118KB DOC 举报
"C++指针和链表复习题,包含选择题,涉及指针操作、数组、字符串、内存管理及函数参数等知识点。"
详细解释:
1. 指针与字符数组:
- 选项A:声明了一个字符引用a,将其绑定到*p所指向的字符。
- 选项B:错误,不能将一个字符指针赋值给另一个字符指针,应使用&操作符取地址。
- 选项C:将指针p向后移动两个字符位置。
- 选项D:允许移动指针p。
2. sizeof运算符:
- sizeof(x)/sizeof(int)计算整个数组x占用了多少个int大小的空间,答案是5,因此A、B正确。
- sizeof(p)/sizeof(int)计算指针p本身占的大小,通常指针大小不是由int决定的,所以C错误。
- sizeof(x)/sizeof(1)等同于sizeof(x),答案是5,因此D正确。
3. 字符串处理:
- *s[1]访问字符串"Student"的第二个元素,即'T'。
- ps指向"Father"的第一个元素,即'F'。
- *ps同样指向'F',所以输出应该是"Teacher,F,Father"。
4. 字符转换:
- *(ptr+1)+1指向's'的下一个字符,即'4',加1后变为'5',以字符形式输出,答案是C。
5. 函数调用:
- 函数fun需要一个int引用和一个char指针作为参数,因此A正确,其他选项不正确。
6. 字符串复制:
- 选项A:使用逻辑与操作符可能导致只复制一个字符。
- 选项B:等号右侧错误,t++会改变t的值。
- 选项C:自增操作可能导致丢失第一个字符。
- 选项D:正确实现,*s++=*t++逐个复制字符直到遇到空字符。
7. 函数参数传递:
- 当数组作为函数参数时,实际传递的是数组的首地址,即选项A。
8. 内存管理:
- A、B、C都是正确的,D是错误的,因为静态变量在栈上分配,不需要用delete释放。
9. 不正确的语句:
- 选项A:可以声明一个指向整型的指针并赋值为0,但不是指向地址0,而是未定义的值。
- 选项B:错误,不能将一个字符串字面量赋值给浮点指针。
这些题目涵盖了C++中关于指针的基础知识,包括指针操作、数组、字符串处理、内存管理和函数参数传递。通过解答这些题目,学习者可以加深对C++指针和链表的理解。
2019-01-04 上传
2008-11-12 上传
2010-03-07 上传
2021-09-11 上传
2021-09-29 上传
2013-12-03 上传
2020-06-29 上传
点击了解资源详情
点击了解资源详情
我非忆者卖梦为生
- 粉丝: 0
- 资源: 1
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍