C++ delete报错解析
C++ delete报错
今天写了如下代码
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int n, s, a, b;
int ans = 0;
cin >> n >> s;
cin >> a >> b;
int* p = new int[n];
int temp;
int length = 0;
for (int i = 0; i < n; i++) {
cin >> temp; // now temp is the height
if (temp <= a + b) {
cin >> *p; // input the strength cost
p++;
length++;
}
else cin >> temp; // trash data dealing
}
sort(p, p+length-1);
p -= length;
while (s > 0) {
ans++;
s -= *p;
p++;
}
delete [] p;
cout << ans;
}
编译没有报错,但是运行的时候报错了。原因是delete语句。
出错现象:
执行delete语句时,程序卡死。将delete注释掉,程序运行正常,但是发生了内存泄漏。
原因:
p作为指向堆内存的指针,指向的是数组的首地址。而我更改了p的地址,如代码中的p++。
解决方案:
能加const就const,数组首地址是常量,不可以修改。
C++ delete报错解析的更多相关文章
- java -- SSM配置完成后,能访问jsp文件不能访问html文件,报错解析
SSM配置完成后,能访问jsp文件不能访问html文件,报错解析 在确保路径没有任何问题的,情况下,相同的页面,jsp能够正常访问,html却不能正常访问(404). 解决方法: 在web.xml中添 ...
- ArcObject IFeature set_Shape()和Delete()报错
这样的问题主要是Ifeature实际在数据库里面不存在!可是通过IFeatureClass.getFeature()又可以得到! 详细操作流程: 首先是对要素进行删除,可是通过IFeatureClas ...
- 安装PIL报错解析
开始安装PIL PIL只支持到python2.7,我安装的是python3.6版本,所以 不支持,报错 需要下载支持自己版本的包,下载地址https://www.lfd.uci.edu/~gohlk ...
- wcf返回值报错解析
问题来源 最近在项目中使用wcf,因为是一个新手,对新的东西总是比较敬畏,不过一切都是进行得很顺利,运行的时候,突然报了错,编译器提示的错误大概是:“InvalidOperationException ...
- Python读取xml报错解析--ExpatError: not well-formed (invalid token)
xml文件内容如代码所示存入的名字为login.xml: <?xml version="1.0" encoding="utf-8"?> <in ...
- mysql8报错解析
1. 场景描述 想把测试数据导一份到本地使用,乱入装了mysql8,使用springboot项目启动的时候报: java.sql.SQLException: The server time zone ...
- React中input框设置value报错解析
react input 不设置onChange的常见错误截图 表单是前端非常重要的一块内容,并且往往包含了错误校验等逻辑. React对表单元素做了专门的优化处理,他对表单元素做了一些抽象,使得他们 ...
- vue-router动态添加路由报错
[报错] Uncaught Error: [vue-router] route config "component" for path: /home cannot be a str ...
- DOM解析XML报错:Content is not allowed in prolog
报错内容为: Content is not allowed in prolog. Nested exception: Content is not allowed in prolog. 网上所述总结来 ...
随机推荐
- [转] SQL Server 数据库性能优化
分析比较执行时间计划读取情况 1. 查看执行时间和cpu set statistics time on select * from Bus_DevHistoryData set statistics ...
- 《Linux环境进程间通信》系列文章链接
深刻理解 Linux 进程间通信(IPC) http://www.ibm.com/developerworks/cn/linux/l-ipc/index.html Linux 环境进程间通信(一): ...
- (转)协议森林15 先生,要点单吗? (HTTP协议概览)
协议森林15 先生,要点单吗? (HTTP协议概览) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们在TCP流通信中说明了, ...
- vscode在执行 npm任务的时候,会先执行package的name@version 然后命令名 加 当前路径,问题是我的引入路径e是小写的,会导致调试错误,解决方案:没找到,先手书吧
vscode在执行 npm任务的时候,会先执行package的name@version 然后命令名 加 当前路径,问题是我的引入路径e是小写的,会导致调试错误,解决方案:没找到 Executing t ...
- python获取群成员信息
#coding: utf-8 import itchat,datetime from itchat.content import TEXT itchat.auto_login(hotReload=Tr ...
- 【Weiss】【第03章】练习3.9:大整数运算包
[练习3.9] 编写任意精度的整数运算包,要求使用类似多项式运算的方法.计算24000内数字0到9的分布.
- MySQL语句-关于表单的操作总结(新手)
MySQl表的操作: 主键的添加: CREATE TABLE 表名(列名称 数据类型--id INT PRIMARY KEY AUTO_INCREMENT,列名称2 数据类型,············ ...
- Natas9 Writeup(命令注入)
Natas9: 审计源码,发现关键代码: $key = ""; if(array_key_exists("needle", $_REQUEST)) { $key ...
- connection closed by foreign host / Permissions 0620 for '/etc/ssh/ssh_host_ed25519_key' are too open 解决方案
发生此次故障的原因: 在文件夹授权时 错误的执行了 chmod -R 755 / 本来只想授权当前文件夹的 结果... 然后就导致xshell连不上了 懵逼... 解决方案 将权限收回: 执行: ch ...
- spring容器概述
这篇博客写一下对spring和springmvc父子容器的理解. 一.首先明确: (1)spring是一个大的父容器,springmvc是其中的一个子容器.父容器不能访问子容器对象,但是子容器可以访问 ...