Страницы

Поиск по вопросам

среда, 9 января 2019 г.

Последовательность вычислений на Си

Массив char m[] надо превратить в строку, заменив последний элемент нулём. Количество элементов в массиве i. Будет ли правильно написать
m[--i]=0;
или i будет уменьшено уже после присвоения и произойдёт выход за границы массива? Как написать правильно?


Ответ

m[--i]=0;
Сначала будет выполнен декремент, а потом присваивание, как если бы код был
--i; m[i]=0;
И наоборот:
m[i--]=0;
Сначала будет выполнено присваивание, а потом декремент, как если бы код был
m[i]=0; i--;

Комментариев нет:

Отправить комментарий