Dynamically allocate a 2-D arrays in C
正しいのかな?
#include <stdio.h> #include <stdlib.h> int main(){ int **x = NULL; int i, j; x = (int**)malloc( sizeof(int*) * 10 ); for(i = 0; i < 10; i++){ x[i+1] = (int*)malloc( sizeof(int) * (i + 1) ); // *(x + i) = (int*)malloc( sizeof(int) * (i + 1) ); } for(i = 0; i < 10; i++){ for(j = 0; j < i; j++){ x[i][j] = i*10+j; // *(x[i] + j) = i*10+j; // *(*(x + i) + j) = i*10+j; } } return 0; }