C++ передача динамических массивов в функции
Как написать функцию, которая берет динамический массив из main и создает 2 массива, 1 для положительных значений и другой для отрицательных, и возвращает два массива в main?
это то, что я пробовал:
Что я уже пробовал:
#include <iostream> using namespace std; void PosNegArr(int* arr, int s, int* p, int* n, int cp, int cn) { for (int i = 0; i < s; i++) { if (arr[i] < 0) { arr[i] = n[i]; } else { arr[i] = p[i]; } } } int main() { int s, c1, c2; cout << "Enter number of elements:"; cin >> s; int* A = new int[s]; cout << "Enter the elements:"; for (int i = 0; i < s; i++) { cin >> A[i]; } for (int i = 0; i < s; i++) { if (A[i] < 0) { c2++; } else { c1++; } } int* p = new int[c1]; int* n = new int[c2]; PosNegArr(A, s, p, n, c1, c2); cout << "positive elements are :" << endl; for (int i = 0; i < c1; i++) { cout << p[i] << ' ' << endl; } cout << "Negative elements are:" << endl; for (int i = 0; i < c2; i++) { cout << n[i] << ' ' << endl; } }