В C. нет свойства .length. Свойство .length можно применять только к массивам в языках объектно-ориентированного программирования (ООП).Свойство .length наследуется от класса объекта;класс, от которого наследуются все другие классы и объекты в языке ООП.Кроме того, можно использовать .length-1, чтобы вернуть номер последнего индекса в массиве;использование только .length вернет общую длину массива.
Я бы предложил что-то вроде этого:
int index;
int jdex;
for( index = 0; index < (sizeof( my_array ) / sizeof( my_array[0] )); index++){
for( jdex = 0; jdex < (sizeof( my_array ) / sizeof( my_array[0] )); jdex++){
printf( "%d", my_array[index][jdex] );
printf( "\n" );
}
}
Строка (sizeof (my_array) / sizeof (my_array [0]))) даст вам размер рассматриваемого массива.Свойство sizeof будет возвращать длину в байтах, поэтому необходимо разделить общий размер массива в байтах на количество байтов, составляющих каждый элемент, каждый элемент занимает 4 байта, поскольку каждый элемент имеет тип int соответственно.Общий размер массива составляет 16 байт, а каждый элемент имеет 4 байта, поэтому 16/4 дает 4 общего числа элементов в вашем массиве, поскольку индексирование начинается с 0, а не с 1.