项目场景:
在c++的学习和使用中,常常用到数组、指针等,本人在解决将字符串输入转化为数组时遇到的报错:引发了异常: 读取访问权限冲突。
—
问题来源
报错的本质为内存访问问题:
表现有:
- 数组越界
- 对于分配到的空间,未进行预处理
- 空指针,指针越界(本文正是这个问题)
解决方式:
- 检查是否越界
- 对于申请到的空间,是否给了默认值
- 指针是否越界
原因分析:
本人使用cin.getline()函数来实现对输出字符串的存储,但是cin.getline()函数是通过换行符来确定行尾,但是不保存换行符。
解决方案:
在字符串后再手动添加个换行符,或不用换行符判断结尾。
所有评论(0)