Показать сообщение отдельно
Старый 24.02.2012, 10:52   #13
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: Инициализация переменных в цикле for.

Сообщение от Ksanatos Посмотреть сообщение
В общем компилятор ругается на такую конструкцию:
for (;; i++, j * 10);
кто-нибудь может обьяснить причину этого? мне не нужны решения, а лишь голая и не прикрытая теория.
for без среднего параметра работать не может, т.к. ему необходимо условие завершения цикла. Если второй параметр указать и переменные i, j объявлены выше цикла, причём с указанием значений, например нулю равные, то будет норм работать.

Сообщение от Igor Посмотреть сообщение
Рассуждение номер 2 - команды разделяются точкой с запятой, но внутри цикла нельзя поставить лишней ";" по понятным причинам, а ставить между командами запятые тоже нехорошо
хорошо, когда требуется

Ещё: вместо i++ лучше использовать ++i - префиксное плюсование.

Последний раз редактировалось Жека, 24.02.2012 в 10:54. Причина: пс
(Offline)
 
Ответить с цитированием