Hola, buen día.
Encontré esto en unos apuntes y no se como llamarlo, se me antoja una tabla de 3 x 20 con puntero pero me gustaría que alguien me diga si es lo correcto, o cual es la definición correspondiente.
int arr[COL], i, j;
int (*pm)[REN] = (int(*)[REN]) &arr;
Lo que sigue lo implemente yo y parece que funciona correctamente.-
#include <stdio.h>
#include <stdlib.h>
#define REN 3
#define COL 20
int main(int argc, char *argv[]){
int arr[COL], i, j;
int (*pm)[REN] = (int(*)[REN]) &arr;
for ( i=0; i<REN; i++ ){
for ( j=0; j<COL; j++ ){
*(*(pm+COL)+REN) = 2;
}
}
for ( i=0; i<REN; i++ ){
for ( j=0; j<COL; j++ ){
printf ( "%d ", *(*(pm+COL)+REN) );
}
printf ( "\n" );
}
return 0;
}
Saludos y buen Sábado.
pm es un puntero a arrays de REN elementos de tipo int. Es decir, cada vez que crezca en uno saltará REN*sizeof(int) bytes