Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- void printArr(int* arr, int arrSize)
- {
- for (int i{}; i < arrSize; ++i)
- {
- std::cout << arr[i] << ' ';
- }
- std::cout << '\n';
- }
- void printArr(int arr[][4], int sizeY, int sizeX)
- {
- for (int y{}; y < sizeY; ++y)
- {
- printArr(arr[y], sizeX);
- }
- std::cout << '\n';
- }
- void printArr(int** arr, int sizeY, int sizeX)
- {
- for (int y{}; y < sizeY; ++y)
- {
- printArr(arr[y], sizeX);
- }
- std::cout << '\n';
- }
- template<typename T>
- void addRowLine(T**& contaier, int sizeY, int sizeX, int rowPosition, T* newRow = nullptr);
- template<typename T>
- void addRowChunk(T**& contaier, int sizeY, int sizeX, int rowPosition, T* newRow = nullptr);
- int main()
- {
- const int arrSize{ 10 };
- int arrStatic[arrSize]{ 1,2,3,4,5,6,7,8,9,10 };
- int* arrDyn{ new int[arrSize] {11,12,13,14,15,16,17,18,19,20} };
- const int sizeY{ 3 };
- const int sizeX{ 4 };
- int arr2DStatic[sizeY][sizeX]{ {111,2,3,4}, {5,6,7,8}, {9,10,11,112} };
- int** arr2DDyn{ new int* [sizeY] {new int[sizeY * sizeX]{ 1,2,3,4,5,6,7,8,9,10,11,12 }} };
- //*arr2DDyn = new int[sizeY * sizeX]{ 1,2,3,4,5,6,7,8,9,10,11,12 };
- //int* storage{ new int[sizeY * sizeX] { 1,2,3,4,5,6,7,8,9,10,11,12 } };
- //arr2DDyn[0] = bigArr; bigArr + 0 * sizeX
- //arr2DDyn[1] = bigArr + sizeX; bigArr + 1 * sizeX
- //arr2DDyn[2] = bigArr + sizeX + sizeX; bigArr + 2 * sizeX
- for (int y{0}; y < sizeY; ++y)
- {
- arr2DDyn[y] = *arr2DDyn + (y * sizeX);
- }
- //arr2DDyn[0] = new int[sizeX]{1,2,3,4};
- //arr2DDyn[1] = new int[sizeX]{5,6,7,8};
- //arr2DDyn[2] = new int[sizeX]{9,10,11,12};
- //for (int y{}; y < sizeY; ++y)
- //{
- // arr2DDyn[y] = new int[sizeX] {};
- //}
- arr2DDyn[1][1] = 11;
- arr2DDyn[2][3] = 120;
- arr2DDyn[sizeY / 2][sizeX / 2] = 42;
- /*printArr(arr2DDyn, sizeY, sizeX);*/
- printArr((int*)arr2DStatic, sizeY * sizeX);
- //for (int y{}; y < sizeY; ++y)
- //{
- // delete[] arr2DDyn[y];
- //}
- //delete[] arr2DDyn[0];
- //delete[] arr2DDyn[1];
- //delete[] arr2DDyn[2];
- delete[] *arr2DDyn;
- delete[] arr2DDyn;
- //int* arr0{ new int[sizeX]{1,2,3,4} };
- //int* arr1{ new int[sizeX] {5,6,7,8} };
- //int* arr2{ new int[sizeX] {9,10,11,12} };
- //printArr(arrStatic, arrSize);
- //printArr(arrDyn, arrSize);
- // printArr(arr2DStatic, sizeY, sizeX);
- delete[] arrDyn;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement