|
4 / 4 / 3
Регистрация: 23.10.2012
Сообщений: 233
|
|
Стоит ли использовать тернарный оператор, если всегда есть альтернативы в С ?04.07.2013, 00:55. Показов 10841. Ответов 85
Метки нет (Все метки)
Мне вот интересно , что скажут люди о Тернарном операторе, которые уже на С++ программируют немало.
Насколько он удобен, много ли экономит пространство кода и стоит ли его применять сильно часто или же тернарный оператор у многих не приживается в дальнейшем. Да не спорю придумали его наверное не зря, перед какими то задачи он может и удобен, но мне кажется что его используют мало людей
0
|
|
| 04.07.2013, 00:55 | |
|
Ответы с готовыми решениями:
85
Оператор идентичности - когда стоит использовать? Оператор gets() не хочет выполняться, если перед ним стоит scanf Как узнать есть ли фронтальная камера на устройстве и если есть, то использовать ее? |
|
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
|
|
| 04.07.2013, 08:05 | |
|
это вопрос привычки. поначалу кажется, что "блин, запутано тут все очень". сейчас, например мне, гораздо проще воспринимать его, чем два if() и еще кучу скобочек.
0
|
|
|
Ушел с форума
|
||||||
| 04.07.2013, 09:45 | ||||||
|
Хорошее применение тернарного оператора - инициализация константных данных,
когда нужно присвоить значение по условию. Например:
1
|
||||||
|
|
||||||
| 04.07.2013, 10:05 | ||||||
|
функция
0
|
||||||
|
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
|
|
| 04.07.2013, 10:23 | |
Сообщение было отмечено как решение
Решение
3
|
|
|
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
|
|
| 04.07.2013, 10:34 | |
|
ниасилил я ваши метафоры...
0
|
|
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
|||||||||||
| 04.07.2013, 10:55 | |||||||||||
|
Личное мое имхо, что использование более одного тернарного оператора в строке ничего хорошего не приносит.
К тому же, не стоит забывать о приоритетах в тернарном операторе. Пример: был у меня как-то подобный код:
И решил я его зарефакторить по неопытности в такой:
0
|
|||||||||||
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
||||||||||||
| 04.07.2013, 10:59 | ||||||||||||
Сообщение было отмечено как решение
Решение
![]() На самом деле в циклы удобно пихать:
3
|
||||||||||||
|
868 / 528 / 148
Регистрация: 03.02.2013
Сообщений: 1,845
|
|||||||
| 04.07.2013, 11:10 | |||||||
|
как то так будет выглядеть :
0
|
|||||||
|
868 / 528 / 148
Регистрация: 03.02.2013
Сообщений: 1,845
|
||
| 04.07.2013, 11:35 | ||
|
Thinker,
строку типа "347ЙQ562" (коды Q и Й больше цифр по кодам) эта функция захавает и выдаст тот же результат 7, что и ваша трёхэтажная конструкция Добавлено через 1 минуту а кожись догнал что вы имели ввиду) сейчас подумаю малясь
0
|
||
|
868 / 528 / 148
Регистрация: 03.02.2013
Сообщений: 1,845
|
|||||||
| 04.07.2013, 11:40 | |||||||
0
|
|||||||
|
|
|||||||
| 04.07.2013, 11:47 | |||||||
|
непонятно что тут сложного, свмый простой способ:
0
|
|||||||
|
868 / 528 / 148
Регистрация: 03.02.2013
Сообщений: 1,845
|
||||||
| 04.07.2013, 11:48 | ||||||
|
Thinker,
ну если первой строчкой засандалить char m = 0; вместо char m = *s; у вас там то же самое происходит Добавлено через 32 секунды типа так
0
|
||||||
|
868 / 528 / 148
Регистрация: 03.02.2013
Сообщений: 1,845
|
||||||
| 04.07.2013, 11:57 | ||||||
|
Thinker,
да, действительно первый символ выпадает
0
|
||||||
|
|
|
| 04.07.2013, 12:00 | |
|
0
|
|
| 04.07.2013, 12:00 | |
|
Помогаю со студенческими работами здесь
20
тернарный оператор Тернарный оператор Тернарный оператор Тернарный оператор Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|