C++指针与链表基础复习及习题解析
需积分: 10 31 浏览量
更新于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
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍