Задача така: Створити функцію для роботи з дин двовимірним рваним масивом(рядки можуть бути різної довжини): пошук заданого значення у масиві(повертати вказівник на перше входження шуканого чи nullptr, якщо не знайдено).
Я реалізувала її таким чинном:
▼Прихований текст
int * searchFirstEntryElement(int ** mas, int row, int elem)
{
int *p = NULL;
for (int i = 0; i < row; ++i)
{
int col = mas[i][0];
int j = 1;
while (mas[i][j] != elem && j <= col)
++j;
if (j <= col)
{
p = &mas[i][j];
return p;
}
}
return p;
}
int main()
{
...
int find_element;
cout << "Enter number wich you want find in the matrix: ";
cin >> find_element;
int first_entry_elements = *searchFirstEntryElement(numbers, rows, find_element);
if (first_entry_elements != NULL)
cout << "The first entry of the desired element: " << first_entry_elements << "\n";
else
cout << "The desired element is not found\n";
}
І, власне, сама проблема: якщо елемент знайдено, то працює нормально, а якщо - ні, то програма вилітає. В чому може бути причина?