'Why the code show "Debug Assertion Failed!" message? [duplicate]
I trying to make a C++ code that delete occurrences of an element if it occurs more than "n" times, when I debug the code, apears a window with the message: "Debug Assertion Failed!"
Here is the code:
#include<iostream>
#include<vector>
std::vector <int> deleteNth(std::vector<int> arr, int n) {
int asi = sizeof(arr) / sizeof(arr[0]);
int cont = 0;
int i;
int j;
int k;
for (i = 0; i < asi; ++i)
for (j = i + 1; j < asi;)
{
if (arr[i] == arr[j])
{
++cont;
if (cont == n) {
for (k = j; k < asi - 1; ++k)
arr[k] = arr[k + 1];
--asi;
}
}
else
++j;
}
std::vector<int> newarr;
newarr.resize(asi);
return newarr;
}
int main() {
int i;
std::vector<int> arr_final = deleteNth({ 20,37,20,21 }, 1);
int arrsize_ext = sizeof(arr_final ) / sizeof(arr_final[0]);
for (i = 0; i < arrsize_ext; ++i)
cout << arr_final[i] << " ";
}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|