Keil5中PC-Lint9.0的数组和指针教程及常见错误分析
需积分: 31 151 浏览量
更新于2024-08-10
收藏 3.18MB PDF 举报
本教程主要讲解了在Keil5环境下使用PC-Lint9.0进行开发时关于数组和指针的概念以及相关的C++编程习题。首先,作者强调了数组定义的规则,指出在C++中,不能直接使用变量作为数组的维数,例如习题4.1中(a)和(b)选项因为它们分别尝试使用动态获取的buf_size和函数调用get_size()作为数组大小,这是非法的。同时,习题4.1还提到(d)选项中的字符数组st由于存储字符串"fundamental"需要12个元素,而其定义只有11个,因此也是错误的。
习题4.2探讨了数组元素的初始化情况,指出C++ Primer中定义的数组sa和sa2,由于它们的元素类型为string,会自动被赋予空字符串初始值。内置数组ia在函数外部定义时,默认初始化为0,而在函数内部定义的ia2则因其内部作用域,元素值不确定。
习题4.3中,习题解答列举了几种数组定义的错误方式,包括(b)使用vector初始化、(c)用一个数组初始化另一个数组以及(d)用vector对象初始化数组,这些都是不允许的。C++中的初始化列表仅适用于数组,而不能用于vector对象。
习题4.4则重点介绍了如何初始化数组的元素,可以使用初始化列表一次性为数组部分或全部元素赋值。但要注意的是,如果提供了数组的维度,初始化列表中的元素数量不能超过这个维度。
通过这些习题,读者可以深入理解C++中数组和指针的基础概念,以及如何正确地进行数组定义、初始化和操作。此外,章节还涵盖了C++ Primer教材的部分内容,对于学习者来说,这些习题旨在巩固理论知识并提升实践能力。在实际项目开发中,正确理解和运用数组和指针是提高代码效率和可读性的重要手段。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2016-11-07 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
598 浏览量
沃娃
- 粉丝: 31
- 资源: 3950
最新资源
- matlab实现bsc代码-FluxDoRe2D:通过二维捐赠区域进行通量积分
- filter.zip_matlab例程_Visual_Basic.NET_
- COVID笔记本:与COVID相关的Jupyter笔记本
- flashcards:云中托管的抽认卡系统可帮助您随时随地更有效地学习
- PyPI 官网下载 | tencentcloud-sdk-python-habo-3.0.512.tar.gz
- Shinyndnd:在Shiny中创建拖放元素
- GithubAPI:Github API应用程序搜索用户
- FragmentKey一款解决使用newInstance创建fragment定义key传值问题的apt框架-Android开发
- oldest_business:浏览来自BusinessFinancing.co.uk的有关世界上最古老的业务的数据
- module3-solution
- hysdn_proclog.rar_Linux/Unix编程_Unix_Linux_
- maidenhead:Tiny C库,用于以任意精度处理处女的网格正方形
- node演示项目.zip
- lovearth-xdua-nodejs-sdk:适用于xdua的nodejs sdk
- matlab实现bsc代码-MSRcode:用于MSR项目的Matlab代码
- Nascent_m6A_Scripts