Вывод списка с массивами на экран

Есть список, элементами которого являются массивы. Не могу понять как вывести список на экран, если он состоит из нескольких массивов. И вообще, правильно ли сделал, а то не очень понимаю работу с памятью. Спасибо за ответ!

//Структура информационного поля
struct Mass{
    int size;
    int* ptr;
};
//Структура списка
struct Node{
    Mass data;
    Node* next;
};
 
Node* head = NULL; // Указатель на голову
Node* tail = NULL; //Указатель на хвост
int sz = 0;         //Количество элементов списка
 
int main()
{
    setlocale(LC_ALL, "Russian");
    Mass arr = get_data();
    Add(arr);
    return 0;
}
//Получение массива
Mass get_data(){
    Mass array;
    cout << "Введите размер массива: " << endl;
    cin >> array.size;
    array.ptr = (int*)malloc(array.size * sizeof(int));
    if (array.ptr == NULL){
        cout << "Memory not allocated" << endl;
    }
    else {
        cout << "Memory allocated with malloc" << endl;
    }
 
    for (int i = 0; i < array.size; i++){
        cout << "Введите элемент номер " << i << endl;
        cin >> array.ptr[i];
    }
 
    return array;
}
 
void Add(Mass a){
    sz++;
 
    Node* temp = new Node;
    temp->next = head;
    temp->data = a;
 
    if (head != NULL){
        tail->next = temp;
        tail = temp;
    }
    else {
        head = tail = temp;
    }
}

Ответы (0 шт):