|
0 / 0 / 0
Регистрация: 16.05.2012
Сообщений: 36
|
||||||
Возврат к началу switch02.05.2014, 22:42. Показов 14925. Ответов 22
Метки нет (Все метки)
Здравствуйте.
Есть программа, включающая в себя
Например, есть меню из 5 пунктов. Как сделать так, чтобы при вводе числа 6 программа не закрывалась, а снова выводила это меню.
0
|
||||||
| 02.05.2014, 22:42 | |
|
Ответы с готовыми решениями:
22
Возврат к началу цикла Возврат к началу при открытии новых ссылок Возврат обратно в меню, в операторе switch |
|
19506 / 10109 / 2464
Регистрация: 30.01.2014
Сообщений: 17,834
|
|||||||||||||||||||
| 04.05.2014, 01:20 | |||||||||||||||||||
![]() Во-первых inline в первом тесте не было вообще. Компилятор сам принял решение о встраивании. Во-вторых, я пишу одно, а ты читаешь совершенно другое, сам придумываешь, потом сам же разоблачаешь -- нехорошо. В третьих не надо отправлять меня в стандарт. Эта тема его мало касается. Т.к. мы говорим об оптимизации, а о ней там ни слова. В четвертых в стандарт я и сам могу кого хочешь отправить ![]() В общем, смотри еще раз: Я где-то утверждал, что в случае невозможности встроить accept код будет другим? Вот ты пишешь: Пример, я специально его не писал, потому что я знал что будет, а не потому что мне лень или еще что. Но раз ты так хочешь, то вот:
Это код БЕЗ функции. Цифрами пронумерованы прыжки.
Я намеренно допустил мааленькое расхождение в двух примерах. В первом примере результат сравнения с foo1() и foo2() берется без инверсии, а во втором - с инверсией (помним про !accept() в цикле). Эта разница хорошо видна на метке #4. На этом различия (ну кроме имен меток, естественно) заканчиваются.
2
|
|||||||||||||||||||
|
19506 / 10109 / 2464
Регистрация: 30.01.2014
Сообщений: 17,834
|
|
| 04.05.2014, 01:53 | |
|
В общем, я для ясности хочу вот что добавить.
1) Я знаю, что компилятор может не встроить функцию. 2) Я знаю, что теоретически эти примеры могли бы быть совсем разными (если взять какой-нибудь gcc 2.95 - это точно будет так) 3) Я знаю, что рассчитывать только на компилятор и писать говнокод в надежде на оптимизацию - это плохо. Но, я так же знаю, что: 1) "Преждевременная оптимизация корень всех зол". 2) Современные компиляторы достаточно умны, чтобы генерировать оптимальный машинный код из кода с приемлемым количеством абстракций, увеличивающих читаемость. Т.е. не обязательно сейчас (в 2014 году), имея современные инструменты, писать приближенный к ассемблеру код, как это было принято раньше. Однако это не значит, что это дает нам право впадать в крайности (см п.3 первого абзаца). В общем, пойнт в том, что код который дал Tulosba НЕ является крайностью и НЕ является гонокодом, т.к. содержит минимальный необходимый набор абстракций для увеличения читаемости кода, но в то же время позволяет компилятору провести все необходимые оптимизации на том же уровне, что и в коде без таких абстракций. Это то, чего достигла современная индустрия, мы теперь можем писать чуть более высокоуровневый код, без опасения, что он будет неоптимален. В конце концов текст программы пишется и для человека тоже. Его потом нужно сопровождать и понимать другим людям. Поэтому сейчас всем известные классики пишут, и я с ними согласен на 100%, что если не дано специальных условий, приемлемым подходом будет писать код максимально точно описывающий и решающий задачу, а не код, который будет выигрывать такты и байты, при этом маскируя и размазывая алгоритм в своих деталях (за деревьями не видно леса - пословица очень в тему). А решение об оптимизации принимать уже после профилирования.
2
|
|
| 04.05.2014, 01:53 | |
|
Возврат в начало функции из блока Switch
Switch . Как присвоить переменной значение из Switch в default
Power Switch и Reset Switch Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|