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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Halisi
Сообщений: n/a
#1

Цикл Do while в For - C++

16.12.2012, 23:25. Просмотров 338. Ответов 1
Метки нет (Все метки)

Доброго времени суток.Задали мне двоешнику перевисти преобразовать код с циклом do while на цикл for.Т.е код должен работать точно так же с For как и на do while.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
MSG  msg;
    do
    {
        if( !PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) ) 
        {
            
            continue;
        }// if( !PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) ) 
 
        TranslateMessage( &msg );
        DispatchMessage( &msg ); 
 
    }
    while( WM_QUIT != msg.message );
Был предложен такой вариант ответа
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
MSG  msg;
    if( PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) ) 
    {
        TranslateMessage( &msg );
        DispatchMessage( &msg ); 
    }
    for(; WM_QUIT != msg.message ;)
    {if( !PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) ) 
        {
            
            continue;
        }// if( !PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) ) 
 
        TranslateMessage( &msg );
        DispatchMessage( &msg ); 
 
    }
К моему сожелению я был послан переделывать код с аргументом,что оно работать то будет,но можно проще как то.
Спасайте=)))

Добавлено через 3 часа 58 минут
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2012, 23:25     Цикл Do while в For
Посмотрите здесь:
Turbo Pascal Создать программу по всем 3 видам циклов...цикл с параметром,цикл с условием,цикл,и цикл с предусловием...
Visual C++ Как реализовать бесконечный цикл While, но чтобы этот цикл не грузил процессор?
Turbo Pascal Написать в турбо паскале, Цикл с параметром, Цикл, с постусловием, и с предусловием пожалуйста
VBA Цикл: Как грамотно организовать цикл с получением количества верных и неверных ответов?
Почему если условие входа в цикл не выполняется, функция заново входит в цикл C# .NET 3.x
Как переделать программу, чтобы внешний цикл был repeat.until, а цикл for вложенным? Паскаль Pascal ABC
Нормально ли для системы один и тот же цикл запускать цикл 20 раз в секунду с итерацией до 1000 Delphi
C++ Почему цикл на при 1 уходит в бесконечный цикл?
Pascal Итерационный цикл и цикл с известным числом повторения
Помогите заменить цикл forech на простой цикл for C#
C++ Цикл: цикл for вообще никак не воспринимается транслятором

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryS
Модератор
6552 / 5018 / 463
Регистрация: 14.02.2011
Сообщений: 16,741
16.12.2012, 23:43     Цикл Do while в For #2
Цитата Сообщение от Halisi Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
MSG *msg;
 if( PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) ) 
 {
 TranslateMessage( &msg );
 DispatchMessage( &msg ); 
 }
 for(; WM_QUIT != msg.message ;)
 {if( !PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) ) 
 {
continue;
 }// if( !PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) ) 
TranslateMessage( &msg );
 DispatchMessage( &msg ); 
}
а зачем перед циклом блок?
мессагу принимает PeekMessage
значит в цикл войдешь
http://vsokovikov.narod.ru/New_MSDN_...eekmessage.htm
далее поменяй условие
смысл тот же писанины меньше
примерно вот так
C++
1
2
3
4
5
6
7
8
9
MSG  msg=WM_NULL;
for(; WM_QUIT != msg.message ;)
    {
     if( PeekMessage( &msg, 0, 0, 0, PM_REMOVE ) ) 
      {
        TranslateMessage( &msg );
       DispatchMessage( &msg ); 
      }
   }
Ответ Создать тему
Опции темы

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