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

оператор break - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выходной поток первого числа, второго , суммы первого и второго чисел http://www.cyberforum.ru/cpp-beginners/thread993324.html
Здравствуйте! Помогите пожалуйста написать программу, которая через стандартный входной поток принимает текстовые строки, в каждой из которых через пробел или символ табуляции записана пара...
C++ Абстрактные классы Объясните пожалуйста почему это не работает и как исправить? cannot declare variable 'b1' to be of abstract type 'classB' because the following virtual functions are pure within 'classB':virtual... http://www.cyberforum.ru/cpp-beginners/thread993320.html
почему работает несмотря ни на что? C++
код : #include <iostream> using namespace std; int main() { int u; cin>>u; int uu; for (int i=0;i<u;i++) uu=i; for (int i=0;i<u;i++) cout<<i<<" "; return 0; }
C++ Написать программу, которая подсчитывает разные математические величины
II. Написать программу, которая подсчитывает: 1) периметр квадрата, площадь которого равна а; 2) площадь равностороннего треугольника, периметр которого равен р; 3) расстояние между точками с...
C++ среднее арифметическое кубов двух данных чисел http://www.cyberforum.ru/cpp-beginners/thread993314.html
среднее арифметическое кубов двух данных чисел; на с++ Добавлено через 33 секунды Помогите пожалуйста!
C++ Простейшее приложение, перевсти из Java se на C++ помогите мне пожалуйста лучше освоить язык C++. Вот пример приложения на Java se Дайте мне пожалуйста исходник такого приложения на С#. читаю код пишу консоль а вот с windows-forms пробел. ... подробнее

Показать сообщение отдельно
mytilus
83 / 83 / 9
Регистрация: 04.10.2012
Сообщений: 335
31.10.2013, 10:10
Для этого надо иметь представление о том, как все это выглядит после компиляции.
Первый вариант:
C++
1
2
3
4
for (i = 0; i < a; i++) {
  b += i;
  if (b > c) i = a;
  else c++;}
Когда b окажется больше, чем c, и процессор в этом убедится, произойдет следующее:
1) копирование из смещения i в регистр;
2) копирование из регистра в смещение a;
3) прыжок через блок else;
4) инкремент регистра;
5) прыжок в начало цикла;
6) сравнение смещения a и регистра;
7) прыжок из цикла.

Второй вариант:
C++
1
2
3
4
for (i = 0; i < a; i++) {
  b += i;
  if (b > c) break;
  c++;}
После проверки (b > c) будет так:
1) прыжок из цикла.

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