ГЛ
Галчёнок Лисина

Вопрос про массивы C++ (внутри)

Почему такое происходит:
1)
unsigned char data[10][5];
for (int i=0; i<=10; i++)
for (int d=0; d<=5; d++) data[d] = return5(); //Всегда возвращает, например, 5
SomeField.Text = data[2][5] //на обум берём размерность и выбираем 6й (5ый + 1й нулевой) элемент
-------------------------------------------------------------
В результате получим, что угодно, но только не 5.
2)
А вот если сделать объявление так:
unsigned char data[10][6];
То всё получится, как надо. Не важно, что брать char, int или еще что: последний элемент массива в первом примере ведёт себя непредсказуемо.. .
Почему?

Блин, эта сволочь сожрала мой data|i|[d] и его теперь там нет, зато текст курсивом...

ВЛ
Виталий Ламинский

ну а чё ты постоянно пишешь <=, там ведь нету такого элемента
если в массиве 3 элемента, а нумерация начинается с нуля, то вот они: 0, 1, 2 - где ты тут видишь номер 3???

Похожие вопросы
Лёгкая задача с массивом на C++
задача про массивы (C++) [1]
как сложить два двумерных массива в C++
Символьные массивы на C.
удалить из массива .c++как сделать??
C++ Двумерные массивы
C# помощь по массиву.
Вопрос по Visual C# и динамических массивах.
Двумерные массивы в C++
Динамические массивы c++