C++ 未处理的异常。这是怎么回事?
c++ unhandled exception. what's going on?
我正试图从输入文本制作香农代码制作器,我有一些麻烦…
所以,这里有一些简单的代码
int main()
{
string x="this is very big text.";
int temp;
int N = x.length();
int *mass = new int [N];
然后计数文本中的符号;
然后计数从ASCII表中使用的符号;
创建带有符号和符号计数器的新2块,但它们的尺寸相当小;
delete char mass by delete mass;
按计数器排序并计算它们的累积概率;
double * cumulative = new double (k);
double temp=int_mass[0];
cumulative[0]=0;
for (int i=1; i<k; i++)
{
temp=int_mass[i-1];
cumulative[i]=cumulative[i-1]+temp/N;
}
计算所有3个质量
double a,b,n;
n=N;
for (int i=0; i<k; i++)
{
b=int_mass[i];
b/=n;
cout<<char_mass[i]<<" ";
cout<<b<<" "; //**__**__**
cout<<cumulative[i]<<endl;
}
所以,我有一些麻烦。如果文本很小,则在程序终止时捕获未处理的异常。如果文本很大,大约100+符号,我在__**__有例外。
你有什么建议,为什么会发生?
抱歉,这是我第一次在StackOverFlow上提交。
使用[]
代替()
到new
数组:
double * cumulative = new double [k];
^ ^
(k)
只是在内存中创建一个位置并初始化为k
,而不是创建一个大小为k
的数组。
,
使用[]
删除数组:
delete [] mass;
^^
,
你正在使用k
,但是我看不到你在哪里初始化它?!
for (int i=0; i<k; i++)
,
最好使用std::vector
而不是自定义数组,以避免上述问题
相关文章:
- 使用递归的数组的最小值.这是怎么回事
- 我不小心调用了一个没有自己类对象的成员函数.但这是怎么回事呢
- 在c++中实现LinkedList时,应出现未处理的错误
- 如何修复链表类实现的未处理异常0xDDDDDDDD
- 在信号处理程序中捕获C++未处理的异常并恢复应用程序
- 在C++程序中使用的迭代器中未处理的异常
- 我使用 OpenMP 的线程越多,执行时间就越长,这是怎么回事?
- 绕道重铸瓷砖层是怎么回事
- 在 ******.exe 中0x00000000772CA267 (ntdll.dll) 处未处理的异常:0xC0000
- 未处理的异常与 cudaMemcpy2D
- 处理未处理的异常更改C++
- for 循环中未处理的异常
- VisualC++ 2010 有没有办法找出有关未处理异常错误的更多详细信息
- 为什么此代码导致未处理的异常失败
- 瓦尔格林德:注意到但未处理的国际奥克特尔;是否有必要处理以及如何找到?
- 架 (U+67B6) 与en_US不符.UTF-8.这是怎么回事?
- R 中的算术在数字上比整数更快。这是怎么回事?
- 我的代码运行良好,但现在当尝试将其制作成模板时,我遇到了许多看似无关的错误。这是怎么回事?
- 在OpenCV_core310.dll中使用findContours函数时,OpenCV引发未处理的异常
- C++ 未处理的异常。这是怎么回事?