|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
Dimitry SibiryakoveNoseЯ вправе расчитывать управление ходом расчетов с помощью скобок, не так ли? Вправе. Но ты должен пояснить почему ты ожидаешь от (a++) результат 2. Инкремент а при постфиксе происходит после получения его текущего значения и это не зависит от приоритета. Не вправе. Приоритет операций это не то же самое что порядок выполнения. Приоритет операций существует только при синтаксическом анализе. При выполнении там порядок может быть произвольным (в пределах стандарта), главное чтобы каждое подвыражение вычислялось после его аргументов. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 20:00 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
Aklinкомпилятор выбрал приоритет этих присваиваний на свой вкус жесть ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 20:00 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
Anatoly MoskovskyПриоритет операций это не то же самое что порядок выполнения. x=2+3*5; x=(2+3)*5; ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 20:01 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovты должен пояснить почему ты ожидаешь от (a++) результат 2 потому что написано, что с помощью скобок я могу управлять ходом вычисления ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 20:06 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
Найди любое описание как работает "пост инкремент". И запость сюда в форум. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 20:17 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
maytonНайди любое описание как работает "пост инкремент". И запость сюда в форум. https://ravesli.com/urok-40-inkrement-dekrement-pobochnye-effekty/ про побочные эффекты, которые возникают из-за "C++ не определяет порядок, в котором вычисляются аргументы функции." в принципе понятно. надо было только явно написать об этом в документации, а не оставлять на откуп производителям компиляторов. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 20:22 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
eNoseнаписано, что с помощью скобок я могу управлять ходом вычисления Где это так врут? Скобки управляют именно приоритетом: When parsing an expression, an operator which is listed on some row of the table above with a precedence will be bound tighter (as if by parentheses) to its arguments than any operator that is listed on a row further below it with a lower precedence. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 20:25 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
Dimitry SibiryakoveNoseнаписано, что с помощью скобок я могу управлять ходом вычисления Где это так врут? Скобки управляют именно приоритетом: When parsing an expression, an operator which is listed on some row of the table above with a precedence will be bound tighter (as if by parentheses) to its arguments than any operator that is listed on a row further below it with a lower precedence. в "плоском" выражении без вызова других функций это и есть ход вычисления ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 20:26 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
eNoseв принципе понятно. надо было только явно написать об этом в документации, а не оставлять на откуп производителям компиляторов. Есть стандарт С/С++, считай ТЗ для разработчика компилятора, там написано что это UB. Разработчики компиляторов (не все) предупреждают что код проблемный 21809886 . Что еще надо? PS Вчера звонил один жестко накосячивший юзер с наездом что моя прога плохо работает. А то что прога дала два предупреждения о косяке и юзер дважды нажал проигорировать - это недоработка моей проги (((( ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 20:30 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
eNoseв "плоском" выражении без вызова других функций это и есть ход вычисления Нет конечно. Начнем с того что например порядок выполнения того же постинкремента (время вычисления возвращаемого значения и время вычисления побочного эффекта) никак синтаксически нельзя выразить. Это просто описано в стандарте. Поэтому приоритет операций там никакого значения не имеет. А то что в каких-то простейших частных случаях приоритет влияет на порядок, так это просто потому, что синтаксис специально разрабатывают так чтобы простую программу было проще писать. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 21:15 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
eNoseDimitry Sibiryakovты должен пояснить почему ты ожидаешь от (a++) результат 2 потому что написано, что с помощью скобок я могу управлять ходом вычисления Вы утомили. Я же привел пример 21809438 - что проблема не в скобках справа, а в самой операции присвоения. Скобки можно расставлять по вкусу. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 21:57 |
|
вопрос про приоритеты операций
|
|||
---|---|---|---|
#18+
их перестановка не влияет на результат. И в MSVC работает тоже как нужно и ожидается. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2019, 22:06 |
|
|
start [/forum/topic.php?fid=57&gotonew=1&tid=2017663]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
10ms |
get first new msg: |
9ms |
get forum data: |
4ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 156ms |
0 / 0 |