1

Тема: Навчіть жити

#include <iostream>

using namespace std;

int main()
{
    int size, tempsize = 0;
    int* temparr = new int[tempsize];
    cout << "Enter size of massive: ";
    cin >> size;
    int* arr = new int[size];
    for (int i = 0; i < size; i++)
    {
        cout << "Enter " << i << " number of arr: ";
        cin >> arr[i];
    }
    int n = 0;
    for (int i = 0; i < size; i++) {
        for (int j = i + 1; j < size; j++) {
            if (arr[i] == arr[j]) n++;
            
        }
        if (n == 0) {
            temparr[tempsize] = arr[i];
            tempsize++;
        }
        n = 0;
    }
    cout << endl;
    for (int i = 0; i < tempsize; i++) {
        cout << temparr[i] << " ";
    }
}

Чи коректно працює динамічний массив temparr.
Ми щас будем битись, бо я кажу , що так не може працювати через присвоєння до чужої пам'яті.

2

Re: Навчіть жити

Якщо в arr усі  елементи різні, то буде UB. 3.7.4.1 п.2 ...The effect of indirecting through a
pointer returned as a request for zero size is undefined.
Ну і так, код безглуздий, але питали ж не про це.

Подякували: maxzub, Droid 772