В интервью мне задали вопрос, как я могу выделить двухмерный массив, и ниже было мое решение.
#include <stdlib.h>
int **array;
array = malloc(nrows * sizeof(int *));
for(i = 0; i < nrows; i++)
{
array[i] = malloc(ncolumns * sizeof(int));
if(array[i] == NULL)
{
fprintf(stderr, "out of memory\n");
exit or return
}
}
Я думал, что проделал хорошую работу, но затем он попросил меня сделать это, используя один оператор malloc()
не два. Я не знаю, как это достичь.
Может кто-нибудь предложить мне какую-нибудь идею сделать это в одиночном malloc()
?