C++指针与链表基础复习及习题解析
需积分: 10 116 浏览量
更新于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 上传
2021-11-16 上传
2023-05-22 上传
2023-04-27 上传
2024-09-08 上传
2023-03-12 上传
2023-07-09 上传
2023-10-28 上传
我非忆者卖梦为生
- 粉丝: 0
- 资源: 1
最新资源
- 多传感器数据融合手册:国外原版技术指南
- MyEclipse快捷键大全,提升编程效率
- 从零开始的编程学习:Linux汇编语言入门
- EJB3.0实例教程:从入门到精通
- 深入理解jQuery源码:解析与分析
- MMC-1电机控制ASSP芯片用户手册
- HS1101相对湿度传感器技术规格与应用
- Shell基础入门:权限管理与常用命令详解
- 2003年全国大学生电子设计竞赛:电压控制LC振荡器与宽带放大器
- Android手机用户代理(User Agent)详解与示例
- Java代码规范:提升软件质量和团队协作的关键
- 浙江电信移动业务接入与ISAG接口实战指南
- 电子密码锁设计:安全便捷的新型锁具
- NavTech SDAL格式规范1.7版:车辆导航数据标准
- Surfer8中文入门手册:绘制等高线与克服语言障碍
- 排序算法全解析:冒泡、选择、插入、Shell、快速排序