Форум программистов, компьютерный форум CyberForum.ru

Можно ли в цикле for устанавливать переменное значение инициализатора? - C++

Войти
Регистрация
Восстановить пароль
 
ilizard
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 50
02.04.2013, 01:10     Можно ли в цикле for устанавливать переменное значение инициализатора? #1
Ну вот мне позарез надо сделать так:
C++
1
2
3
int j=(23-posl);   
for (i=j;i>=0;i--)
    cout << c[i];
так нельзя? а мне очень нужно. что можно сделать?
если вместо j поставить число то все работает правильно. А так работает, но неправильно.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.04.2013, 01:10     Можно ли в цикле for устанавливать переменное значение инициализатора?
Посмотрите здесь:

Изменение значение указателя в цикле C++
C++ Что можно не устанавливать в VS 2008
как обнулить значение массива в цикле?(с++) C++
Почему можно переопределять переменную в цикле? C++
Как в цикле можно выполнить действие один раз? C++
В цикле вычислить значение выражения C++
C++ Можно ли в цикле for объявить две переменных разного типа?
C++ Переменное число аргументов
C++ Найти в цикле значение ряда, большее заданного
C++ Функция rand в цикле выводит одно и то же значение
C++ Использование инициализатора элемента данных не допускается
C++ Переменная в цикле не принимает значение ноль

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Venzo
 Аватар для Venzo
125 / 123 / 4
Регистрация: 03.07.2011
Сообщений: 354
02.04.2013, 01:16     Можно ли в цикле for устанавливать переменное значение инициализатора? #2
Цитата Сообщение от ilizard Посмотреть сообщение
Ну вот мне позарез надо сделать так:
int j=(23-posl);
for (i=j;i>=0;i--)
cout << c[i];
так нельзя?
можно
покажите конкретный код, объясните что именно не так работает, как вы ожидаете.
supra7sky
 Аватар для supra7sky
15 / 15 / 1
Регистрация: 07.02.2013
Сообщений: 123
02.04.2013, 01:36     Можно ли в цикле for устанавливать переменное значение инициализатора? #3
Цитата Сообщение от ilizard Посмотреть сообщение
Ну вот мне позарез надо сделать так:
C++
1
2
3
int j=(23-posl);   
for (i=j;i>=0;i--)
    cout << c[i];
так нельзя? а мне очень нужно. что можно сделать?
если вместо j поставить число то все работает правильно. А так работает, но неправильно.
Все должно работать. Наверное вы просто просчитались немного.
Если у вас 10 Visual Studio, поставьте брейкпоинт на начало мейна и проследите за изменениями значений переменный в Окне "Локальные".
Отладчик в Visual Studio: поищите про него инфу. Хорошо поможет в дальнейшем.
ilizard
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 50
02.04.2013, 02:02  [ТС]     Можно ли в цикле for устанавливать переменное значение инициализатора? #4
Venzo, вот
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for ( i=0;i<23;i++){
    c[i]= a%2;
    a = a / 2;}
c[i+1]= a%2;
int posl=0;
int flag = 0;
 
for ( i=23;i>0;i--){
    if ((flag==0)&&(c[i]==0))
         posl++;
    else
        flag =1;}
 int j=(23-posl);
for (i=j;i>=0;i--)
    cout << c[i];
Я ожидаю что j станет равным 5, и у меня выведутся элементы с 5 до 0
а главная задача вывести элементы начиная с первой значащей цифры
Venzo
 Аватар для Venzo
125 / 123 / 4
Регистрация: 03.07.2011
Сообщений: 354
02.04.2013, 23:45     Можно ли в цикле for устанавливать переменное значение инициализатора? #5
значит posl не равно 18, т.е. массив c состоит не из тех элементов, которые вы ожидаете. попробуйте его полностью вывести и посчитать.
Yandex
Объявления
02.04.2013, 23:45     Можно ли в цикле for устанавливать переменное значение инициализатора?
Ответ Создать тему
Опции темы

Текущее время: 21:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru