Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1 / 1 / 2
Регистрация: 21.03.2010
Сообщений: 38
1

Вопрос про цикл for

12.04.2010, 10:54. Просмотров 1246. Ответов 9
Метки нет (Все метки)

Скажите, а есть ли какая-то разница в записях:
C++
1
for (int i=0; i<n; i++)
и
C++
1
for (int i=0; i<n; ++i)
Спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.04.2010, 10:54
Ответы с готовыми решениями:

Вопрос про цикл.
Добрый день. Попал в тупик, не знаю как закрутить cin&gt;&gt; в цикл подскажите пожалуйста:). Вот...

моя первая плата, хедеры - вопрос про eagle или про пайку
До сих пор я паял платы на однослойных платах для прототипирования - примерно вот таких...

Вопрос про обратную связь, и про схемотехнику полумоста
Добрый день) Я сейчас делаю схему от уважаемого rost c форума http://www.psb-kots.ru/forum/ , и...

вопрос про Sape, про поиск площадок
Делаю поиск площалок. В каждом пункте результатов поиска есть кнопки BL и GBL. Что они значат и...

9
14 / 14 / 5
Регистрация: 10.02.2010
Сообщений: 72
12.04.2010, 11:05 2
Разница есть: ++i увеличивает значение. а потом возвращает его. i++ возвращает значение, а затем увеличивает его.
0
1 / 1 / 2
Регистрация: 21.03.2010
Сообщений: 38
12.04.2010, 11:05  [ТС] 3
Это понятно. Но применительно к циклу for - есть разница?
0
7 / 7 / 7
Регистрация: 24.03.2010
Сообщений: 25
12.04.2010, 11:06 4
Разница есть. Префиксная и постфиксная форма инкремента. В префиксной - сначала модифицируется параметр, затем выполняются действия. В постфиксной - наоборот - сначала выполняются действия, затем модифицируется параметр.
0
14 / 14 / 5
Регистрация: 10.02.2010
Сообщений: 72
12.04.2010, 11:07 5
Цитата Сообщение от ivpoed Посмотреть сообщение
Но применительно к циклу for - есть разница?
разница есть
0
1 / 1 / 2
Регистрация: 21.03.2010
Сообщений: 38
12.04.2010, 11:15  [ТС] 6
Просто сколько пробовал в разных циклах менять ++i на i++ - результат один и тот же.
Внутри цикла счётчик (int i) те же значения принимает в одинаковые итерации циклов.
В чём тогда различие с точки зрения цикла?
0
Эксперт JavaЭксперт С++
8360 / 3581 / 419
Регистрация: 03.07.2009
Сообщений: 10,708
12.04.2010, 11:22 7
DartDayring, Lаmer, ivpoed, если в форе кроме этих трех действий указать еще четвертое, пятое и т.д., которые учитывают значение i то разница есть. Если в форе нет дополнительных действий то для тела фора разницы нету. Посмотрите программу
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
int main()
{
    int i;
    for(i = 0; i < 10; std::cout<<++i<<'\t')
        std::cout<<"for "<<i<<std::endl;
    std::cout<<'\n'<<std::endl;
    for(i = 0; i < 10; std::cout<<i++<<'\t')
        std::cout<<"for "<<i<<std::endl;
    return 0;
}
Результат
Код
for 0
1       for 1
2       for 2
3       for 3
4       for 4
5       for 5
6       for 6
7       for 7
8       for 8
9       for 9
10

for 0
0       for 1
1       for 2
2       for 3
3       for 4
4       for 5
5       for 6
6       for 7
7       for 8
8       for 9
9
0
1 / 1 / 2
Регистрация: 21.03.2010
Сообщений: 38
12.04.2010, 11:51  [ТС] 8
Вот оно как. Понял, спасибо!
0
1993 / 1593 / 488
Регистрация: 31.05.2009
Сообщений: 2,980
12.04.2010, 14:38 9
Цитата Сообщение от ivpoed Посмотреть сообщение
Скажите, а есть ли какая-то разница в записях:
Which is more efficient: i++ or ++i?
0
Эксперт С++
1660 / 1032 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
12.04.2010, 19:07 10
При организации цикла на целочисленных переменных разницы нет. Если же использовать хитронавороченные итераторы и аналогичные объекты, стоимость копирования/уничтожения которых может оказаться велика, надо использовать ++i (почему - объясняется по приведённой rangerx ссылке). Многие пишут ++i в любом случае, даже с целочисленными переменными, для единообразия и выработки привычки писать правильный инкремент.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.04.2010, 19:07

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

2 вопроса про цикл и про FileCreate
1.При выполнении прога зависает: int count = 1; AnsiString myF; ...

Вопрос про this
В С++ я делаю так: struct T { int a, b; T f() { return *this;

Вопрос про pr
Добрый день уважаемые форумчане. Интересует следущий вопрос: 1.Перетекает ли pr с картинок?...

Вопрос про Pr
Всех приветсвую. начнем: Например если я великий дизайнер, у меня есть сайт c pr1-pr0. На...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.