0 / 0 / 0
Регистрация: 08.08.2018
Сообщений: 3
|
|
1 | |
Почему операторы "if else" ставят в одну строку, к примеру: else if (BMI <=25)???08.08.2018, 23:30. Показов 7251. Ответов 44
Метки нет (Все метки)
0
|
08.08.2018, 23:30 | |
Ответы с готовыми решениями:
44
Почему запрос вернёт одну строку ? Почему в функции operator не ставят тип возвращаемого значения? Почему выводит еще одну строку, равную 0? Почему двумерный массив выводится в одну строку? C# XmlWriter пишет всё в одну строку. Почему? |
1467 / 1008 / 456
Регистрация: 30.10.2017
Сообщений: 2,798
|
|
09.08.2018, 21:13 | 22 |
ValeryS, чтобы при чтении программы не распылять внимание на весь блок, содержащий этот цикл, так как он может содержать много данных и помимо этого. В идеале, конечно, нужно дробить программу на множество маленьких функций, но это в идеале, бывают исключения.
0
|
1467 / 1008 / 456
Регистрация: 30.10.2017
Сообщений: 2,798
|
|
09.08.2018, 21:28 | 24 |
Croessmah, интересный вариант. Спасибо.
0
|
Форумчанин
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
09.08.2018, 21:56 | 25 |
Именно в таком виде - нельзя.
Только создавать какой-то тип, включающий данные (пару/структуру). Да и зачем? У comma operator хоть есть use-case, когда они полезны (редки, специфичны, но есть). Добавлено через 1 минуту Всегда можно сделать отдельный скоуп или вставить лямбду
1
|
1467 / 1008 / 456
Регистрация: 30.10.2017
Сообщений: 2,798
|
|
09.08.2018, 22:02 | 26 |
Просто мне показалось это удобным, если бы такой функционал поддерживал for. А так, конечно, ради этого создавать пару/структуру, наверное, перебор. Тот же
for (int i = 0;;) , согласитесь, удобнее чем отдельно от цикла объявлять i. Бывает, иногда, хочется объявить одновременно счетчик и строковую переменную, и приходится ее объявлять отдельно, что "нагромождает" немного программу.
0
|
Велосипедист...
353 / 220 / 73
Регистрация: 15.12.2015
Сообщений: 785
|
|||||||||||
10.08.2018, 03:08 | 27 | ||||||||||
QuakerRUS, мне кажется, Вы слишком скептичны
На мое мнение, форма :
____ Все сказанное мною выше — имхо. Добавлено через 1 минуту Представил, возможно даже логично. Не буду выставлять все мои мысли напоказ, но скажу вот что : конечный результат будет не лучше, чем то, что мы имеем сейчас
0
|
1467 / 1008 / 456
Регистрация: 30.10.2017
Сообщений: 2,798
|
|||||||||||
10.08.2018, 04:02 | 28 | ||||||||||
Ну, например, что-нибудь такое. Разумеется только как довесок к короткой форме записи.
Captain Maxee, да, и хочу break с указанием количества циклов.
0
|
Mournful Max
|
10.08.2018, 15:01
#29
|
0
|
1467 / 1008 / 456
Регистрация: 30.10.2017
Сообщений: 2,798
|
|
10.08.2018, 15:29 | 30 |
0
|
3881 / 2479 / 418
Регистрация: 09.09.2017
Сообщений: 10,884
|
||||||
10.08.2018, 15:56 | 31 | |||||
Зато более наглядных. Лучше потратить 4 строки и написать
1
|
10.08.2018, 16:02 | 32 | |||||
помнится, раньше в Си даже аргументы при определении функции в скобках нельзя было объявлять.
Не могу ручаться за точность, но было что-то типа
0
|
1467 / 1008 / 456
Регистрация: 30.10.2017
Сообщений: 2,798
|
|
10.08.2018, 16:05 | 34 |
COKPOWEHEU, можно же разбить на столько строчек, сколько нужно. Выше приводил пример.
0
|
10.08.2018, 16:19 | 35 |
Croessmah, вы не поверите, но мне очень нравится изучать иногда древнее программирование, не до такой степени, чтобы забивать голову конкретными попытками писать что-либо на древних языках, но само ощущение "раньше было лучше" нравится.
Читаешь ты такой, что в 1968 году в языке ФОКАЛ количество переменных ограничивалось количеством букв в английском алфавите (минус буква F зарезервированная для функций)... читаешь и думаешь: "WOW какой язык потеряли!"
0
|
3881 / 2479 / 418
Регистрация: 09.09.2017
Сообщений: 10,884
|
||||||
10.08.2018, 16:34 | 36 | |||||
Это дает какие-то преимущества? Ну, кроме мозговыносящего синтаксиса, конечно. Хм... а синтаксис стоит запомнить чтобы издеваться над халявщиками...
Добавлено через 3 минуты Кстати, а как его заставить работать?
Код
$ gcc main.c main.c: In function ‘main’: main.c:5:3: error: expected ‘(’ before ‘{’ token { ^ main.c:7:5: error: a label can only be part of a statement and a declaration is not a statement int i = 1; ^~~ main.c:8:5: error: expected expression before ‘double’ double j = 2; ^~~~~~ main.c:9:11: error: ‘i’ undeclared (first use in this function) cond: i < 5; ^ main.c:9:11: note: each undeclared identifier is reported only once for each function it appears in main.c:12:7: error: ‘j’ undeclared (first use in this function) ++j; ^ main.c:13:7: error: expected expression before ‘:’ token do: ^ main.c:15:3: error: expected ‘while’ before ‘}’ token } ^ main.c:16:1: error: expected declaration or statement at end of input } ^
0
|
1467 / 1008 / 456
Регистрация: 30.10.2017
Сообщений: 2,798
|
|
10.08.2018, 16:37 | 37 |
Наверняка можно и короче придумать форму записи, это то, что сходу в голову пришло. Из преимуществ: объявление переменных с временем жизни до конца цикла и отсутствие лишней табуляции как в случае с дополнительным блоком, а так же развернутый третий блок с операциями, производимыми после прохода цикла.
Добавлено через 54 секунды Никак, это мои фантазии для C++30
0
|
10.08.2018, 16:42 | 38 | |||||
1
|
309 / 221 / 74
Регистрация: 23.05.2011
Сообщений: 981
|
|
10.08.2018, 23:19 | 39 |
0
|
Неэпический
|
|
10.08.2018, 23:24 | 40 |
0
|
10.08.2018, 23:24 | |
10.08.2018, 23:24 | |
Помогаю со студенческими работами здесь
40
Почему Memo выводит одну строку 6 раз подряд? Генерирую сайт на php - получаю код html в одну строку. Почему? не могу добавить еще одну станицу по примеру Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |