Нужно сделать пересечение двух знаковых массивов. По большому счёту все работает но в конце всегда выводит несколько непонятных символов. Массив создается вроде корректно. Не могу понять в чем ошибка. Вот код метода :
String String::cross(const String& other)
{
size_t size;
size_t len1 = strlen(this->string_);
size_t len2 = strlen(other.string_);
if (len1 > len2)
{
size = len1;
}
else
{
size = len2;
}
size_t counter = 0;
for (size_t i = 0; i < size; i++)
{
if (this->string_[i] == other.string_[i])
{
counter++;
}
}
char* result = new char[counter+1];
for (size_t i = 0; i < size; i++)
{
if (this->string_[i] == other.string_[i])
{
result[i] = this->string_[i];
}
else
{
result[i] = '_';
}
}
return result;
}
и вот вывод :
Enter your string : hello
Enter your string : hola
h_l__¤¤
Помогите пожалуйста.