Я хочу создать динамический 2d массив по функциям, но, похоже, что-то не так. Я получаю сообщение об ошибке, когда хочу что-то добавить в него.
Error
Необработанное исключение в 0x003a19c8 в
p01.exe: 0xC0000005: нарушение прав доступа
место записи 0xcdcdcdcd.
CreateDynamicArray ()
short int** CreateDynamicArray(int row, int col)
{
// Creating variable
short int** dynamicArray;
// Creating rows
dynamicArray = (short int**)malloc(row * sizeof(short int*));
// Going trough every row and creating columns for them
for (int i = 0; i < row; i++)
{
dynamicArray[row] = (short int*)malloc(col * sizeof(short int));
}
// Returning created array
return dynamicArray;
}
Основной ()
// Creating it
dynamicArray = CreateDynamicArray(row, col);
// Filling up with random numbers
for (i = 0; i < row; i++)
{
randomNumber = rand() % 20;
dynamicArray[i][n] = randomNumber; // Here it throws me exception
for (n = 0; n < col; n++)
{
randomNumber = rand() % 20;
dynamicArray[i][n] = randomNumber;
}
}
P.S.
Да, это в некотором роде домашнее задание, но мне все еще нужна помощь по этому вопросу:)