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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
denvasden
4 / 4 / 0
Регистрация: 25.10.2012
Сообщений: 104
#1

Цикл без тела - C++

12.02.2013, 14:12. Просмотров 1552. Ответов 10
Метки нет (Все метки)

Доброго всем дня!
Читаю книжку, раздел управляющие конструкции, и тут встречаю вот такое утверждение: "В некоторых программах даже встречается циклы без тела, в которых сразу после условия следует точка с запятой"
Пример не приведен.

Как может завершиться цикл, если нет тела благодаря которому меняется условие?
В каких случаях применяются такие циклы?

Спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2013, 14:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Цикл без тела (C++):

Какое назначение может иметь в программе приведенный цикл без тела? - C++
for (t=0; t<SOME_VALUE; t++);

Цикл FOR без операторов - C++
Доброго дня! Столкнулся с такой вот задачей. Не смог понять, почему значение переменной 'a' стало 10 в итоге. #include<iostream> ...

Цикл for без указания шага - C++
Что будет делать цикл for, если не давать ему шаг? Объясните, пожалуйста. Пример кода: for (int i = 1; i < n;) if (arr <= arr)...

Как убрать цикл while, чтобы результат выводился без нажатия точки? - C++
char cKey_USER = 0; int iSumma = 0; while (cKey_USER != ' ') { cKey_USER = getchar(); if (GetLetter(cKey_USER) != 0) {...

Найти сумму цифр заданного числа без учёта последней цифры через цикл while - C++
У меня есть код программы: #include "stdafx.h" #include "stdio.h" void main() { int n,s; printf("n= \n"); scanf("%d",&n); ...

Нужно найти удельный вес твердого тела(любого): указывается название твердого тела, его удельный вес - C++
Напишите пожалуйста программу ( с комментариями по возможности ) Нужно найти удельный вес твердого тела(любого): указывается название...

10
Croessmah
Эксперт CЭксперт С++
13512 / 7670 / 866
Регистрация: 27.09.2012
Сообщений: 18,870
Записей в блоге: 3
Завершенные тесты: 1
12.02.2013, 14:22 #2
Цитата Сообщение от denvasden Посмотреть сообщение
Как может завершиться цикл, если нет тела благодаря которому меняется условие?
в условии происходит изменение всего, что нужно
Цитата Сообщение от denvasden Посмотреть сообщение
В каких случаях применяются такие циклы?
Например, вот:
C++
1
2
3
4
5
6
7
#include <iostream>
int main(){
    char str[]=" My    str   in g   ";
    for(char *p1=str,*p2=str;*p2=*p1;p2+=(*(p1++)==' '?0:1));
    std::cout<<str<<std::endl;
    return 0;
}
1
denvasden
4 / 4 / 0
Регистрация: 25.10.2012
Сообщений: 104
12.02.2013, 14:23  [ТС] #3
Croessmah, забыл уточнить, что там речь шла о цикле while()
0
Art
153 / 153 / 35
Регистрация: 20.12.2011
Сообщений: 1,502
Завершенные тесты: 2
12.02.2013, 14:23 #4
Возможно тут вы найдете ответ на свой вопрос (страница 131)
1
denvasden
4 / 4 / 0
Регистрация: 25.10.2012
Сообщений: 104
12.02.2013, 14:25  [ТС] #5
Art92, спасибо, читаю.
0
Art
153 / 153 / 35
Регистрация: 20.12.2011
Сообщений: 1,502
Завершенные тесты: 2
12.02.2013, 14:28 #6
не за что
0
Croessmah
Эксперт CЭксперт С++
13512 / 7670 / 866
Регистрация: 27.09.2012
Сообщений: 18,870
Записей в блоге: 3
Завершенные тесты: 1
12.02.2013, 14:30 #7
Цитата Сообщение от denvasden Посмотреть сообщение
Croessmah, забыл уточнить, что там речь шла о цикле while()
а разница? Вот Вам с while - копирование одной строки в другую:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
void Mystrcpy(char * dest,char * source){
    while(*(dest++)=*(source++));
}
 
 
int main(){
    char str1[]="My string";
    char str2[1024];
    Mystrcpy(str2,str1);
    std::cout<<str2<<std::endl;
    return 0;
}
1
denvasden
4 / 4 / 0
Регистрация: 25.10.2012
Сообщений: 104
12.02.2013, 14:32  [ТС] #8
Croessmah, изящно. спасибо)
0
СПП
25 / 25 / 2
Регистрация: 15.12.2012
Сообщений: 71
12.02.2013, 14:34 #9
Цитата Сообщение от denvasden Посмотреть сообщение
В некоторых программах даже встречается циклы без тела, в которых сразу после условия следует точка с запятой
Цитата Сообщение от denvasden Посмотреть сообщение
точка с запятой
" ;; " - вот такой там символ подразумевается???
1
Tiva
94 / 94 / 1
Регистрация: 25.04.2012
Сообщений: 429
12.02.2013, 14:34 #10
например создать таймер в отдельно выделенном потоке. завершится цикл тогда, когда поток будет "убит"
как сам таймер реализовать я не знаю
1
denvasden
4 / 4 / 0
Регистрация: 25.10.2012
Сообщений: 104
12.02.2013, 14:36  [ТС] #11
СПП, там имелось в виду
while("выполнение нужных действий");
0
12.02.2013, 14:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2013, 14:36
Привет! Вот еще темы с ответами:

Цикл: цикл for вообще никак не воспринимается транслятором - C++
Пишу программу, которая производит различные действия с одномерным массивом. Возникла следующая проблема: цикл for вообще никак не...

Почему цикл на при 1 уходит в бесконечный цикл? - C++
#define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;string.h&gt; int main() { int x=0, y=0,...

Задание на цикл с параметром и цикл с постусловием - C++
Помогите пожалуйста написать программу с этими циклами. 1. Вычислить и напечатать таблицу значений функции Z= (e^-x)sinx для 0&lt;=x&lt;=П,...

Цикл for/Цикл while Помогите срочно пожалуйста... - C++
1.Вычислить и вывести на экран в виде таблицы значения функции F от x1 до x2 с шагом dx. где a, b и c - действительные числа. 2.Цикл...


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

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

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