Там нет .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.
Недостаточно ли кода? Похоже, вам не хватает открывающей скобки на массиве, а также _ в объявлении my_array –
всего лишь одно из советов: вы должны указать язык, который вы кодируете, чтобы лучше определить правильное решение :) – zero
О, и вы должны сообщить нам об ошибке, потому что в этом коде есть много ошибок;) –