Здравствуйте,
Такая проблема:элемент массива в цикле ведёт себя абсолютно
непонятным для меня образом.
есть массив:
3 5 2 7 4 10 1 9 8 6
нужно просто разбить его на 2 части:
3 5 2 7 4;
10 1 9 8 6;
написав такой код:
int arr[9];
int fhalf[4];
int shalf[4];
int i;
for (i = 0; i <= 4; ++i) {
fhalf[i] = arr[i];
shalf[i] = arr[i + 5];
}
я наивно ожидал получить в результате:
0 1 2 3 4
- - - - -
3 5 2 7 4 - fhalf
10 1 9 8 6 - shalf
но после выполнения fhalf[0] = 6, то есть fhalf[0] = arr[9];
экспериментальным путем было выяснено, что это происходит на
последней итерации, т.е. i == 4;
(до этого fhalf[0] == 3, как и полагается);
Я, видимо, чего-то не понимаю, но как это выходит, что
на последнем шаге оно меняется вдруг с arr[0] на arr[9] ?
Ответ на:
комментарий
от phoenix
Ответ на:
комментарий
от meshkcah
Ответ на:
комментарий
от uj2
Ответ на:
комментарий
от meshkcah
Ответ на:
комментарий
от smartly
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Печать массива символов. (2014)
- Форум не пойму, что делает код (2013)
- Форум Что-то странное с continue (2013)
- Форум странное поведение gtk_combo_box_insert_text (2012)
- Форум Все наборы из n элементов по k (2011)
- Форум Ruby for..end..if..else (2014)
- Форум Теряется сегментация (2006)
- Форум асинхронная дефрагментация массива (2020)
- Форум Проблема со str.split(/regex/) в javascript (2014)
- Форум [C++] Динамический двумерный массив объектов. (2009)