Size: a a a

IT KPI C/C++ ХВ (не UB)

2021 February 22

I

Ivan in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
потому что это массив на стэке, а int ** это массив в куче
все, я понял. Без указателей никуда
источник

G

GNU/Vsevolod in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
#include <iostream>
using namespace std;

template<int X, int Y>
void print_matrix_adjacency(int (&arr)[X][Y])
{
   for (int i = 0;i < X; i++)
   {
       for (int j = 0;j < Y; j++)
       {
           cout<< arr[i][j]<<" ";
       }
       cout<<endl;
   }
}
int main()
{
   int matrix1[4][4] = {
                       {0,1,1,1},
                       {1,0,0,1},
                       {1,0,0,1},
                       {1,1,1,0}
                   };
   int matrix2[5][5] = {
                       {0,0,0,0,0},
                       {0,0,0,0,0},
                       {1,0,0,0,0},
                       {1,1,0,0,0},
                       {0,1,0,0,0}
                   };

   print_matrix_adjacency(matrix1);
   return 0;
}
Або просто int arr[][Y]
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
Ivan
все, я понял. Без указателей никуда
мой варик не котируется что ли?
источник

I

Ivan in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
#include <iostream>
using namespace std;

template<int X, int Y>
void print_matrix_adjacency(int (&arr)[X][Y])
{
   for (int i = 0;i < X; i++)
   {
       for (int j = 0;j < Y; j++)
       {
           cout<< arr[i][j]<<" ";
       }
       cout<<endl;
   }
}
int main()
{
   int matrix1[4][4] = {
                       {0,1,1,1},
                       {1,0,0,1},
                       {1,0,0,1},
                       {1,1,1,0}
                   };
   int matrix2[5][5] = {
                       {0,0,0,0,0},
                       {0,0,0,0,0},
                       {1,0,0,0,0},
                       {1,1,0,0,0},
                       {0,1,0,0,0}
                   };

   print_matrix_adjacency(matrix1);
   return 0;
}
Благодарю, пускай будут шаблоны...
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
GNU/Vsevolod
Або просто int arr[][Y]
у меня не ток квадратные матрицы шарит за то
источник

I

Ivan in IT KPI C/C++ ХВ (не UB)
GNU/Vsevolod
Або просто int arr[][Y]
тоже не работало...
источник

I

Ivan in IT KPI C/C++ ХВ (не UB)
А это все зависит от компилятора? и версии с++
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
думаю нет
источник

I

Ivan in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
мой варик не котируется что ли?
твой варик как раз хорошо работает.
источник

G

GNU/Vsevolod in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
у меня не ток квадратные матрицы шарит за то
arr[][Y] прямокутну теж прийме
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
GNU/Vsevolod
arr[][Y] прямокутну теж прийме
а как узнать тогда длинну 1ой стороны?
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Ivan
твой варик как раз хорошо работает.
всмысле, так там же шаблоны
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
бтв, а почему массив в стэке так странно работает
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
он получается не многомерный?
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
он получается не многомерный?
ну да
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
на стеке все в линию
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
я не знал(не помнил) шо будет сегфолт
источник

AP

Alexander Pavlyuchuk in IT KPI C/C++ ХВ (не UB)
думал просто есть шанс похерить стек
источник

VD

Vlad Doc in IT KPI C/C++ ХВ (не UB)
Alexander Pavlyuchuk
можешь просто (int **) прописать перед matrix1
Бан за пропаганду уб
источник

VD

Vlad Doc in IT KPI C/C++ ХВ (не UB)
Шучу
источник