powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Использование приоритетности операторов или скобки
107 сообщений из 107, показаны все 5 страниц
Использование приоритетности операторов или скобки
    #38823768
Фотография George-III
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Иногда сталкиваюсь с кодом, в котором разработчики не используют скобки, а выстраивают выражения используя приаритетность выполнения операторов. я вот на память эту приоритетность не помню, мне удобнее все оформлять скобками.
Насколько использование приоритетности выполнения операторов прибавляет крутизны. По мне так просто создается плохочитаемый код.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823794
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George-III,

наоборот, лишние скобки создают нечитаемый код.
поэтому лишние скобки нужно убирать.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823796
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Некоторые разработчики думают, что мировой запас скобок жёстко ограничен, и их следует использовать только в самых необходимых случаях" (с) одна хорошая книга по программированию.

1. Не помните приоритетность - плохо. Равно можете не помнить правила дорожного движения, правила грамматики итд.

2. "Вам удобнее" и "Вам плохо читаемо" - это не аргумент.

3. Крутизна тут не при чём.

4. Нехватка скобок ухудшает читаемость кода. Избыток скобок ухудшает читаемость кода. Слишком длинные и сложные выражения, в том числе со скобками и в том числе без скобок, ухудшают читаемость кода. В любом случае важна адекватность и чувство меры.

5. Идеального кода в мире мало. Важным для программиста является умение разобраться в неидеальном коде.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823814
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George-IIIя вот на память эту приоритетность не помню, мне удобнее все оформлять скобками.


Если ты не знаешь язык программирования, на котором пишешь -- учи его. Приоритеты -- одна из составляющих языка программ.
Во многих (в большинстве) ЯП приоритеты операций более-менее соответствуют приоритету аналогичных операций из математики и булевой алгебры. Учи математику и булеву алгебру, если ты ещё их не знаешь (хотя это совсем странно, 4 класс школы, если я не ошибаюсь, а булева -- нач. курс института, но на это я дам подсказку -- AND -- называют логическим умножением (& или && ),
OR -- логическим сложением (| или ||), поэтому относительные приоритеты у этих операций такие же, как и у соотв. операций алгебры чисел -- у AND больше, у OR меньше. Запомнив эти другие названия этих операций ты всегда будешь помнить их приоритеты. Надо ещё запомнить, что логическое НЕ имеет самый большой приоритет (больше AND и OR), можно считать, что NOT -- это логический унарный минус (смена знака). А XOR используется достаточно редко, там можно и скобки поставить.)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823828
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer"Некоторые разработчики думают, что мировой запас скобок жёстко ограничен, и их следует использовать только в самых необходимых случаях" (с) одна хорошая книга по программированию.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823851
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivВо многих (в большинстве) ЯП приоритеты операций более-менее соответствуют приоритету аналогичных операций из математики и булевой алгебры.
Проблемы с приоритетом идут как правило на стыке арифметических и логических операций. Ещё бывают вопросы с приоритетом сравнения, ну и изредка экзотика типа порядка выполнения 1 >> 2 >> 3.

Вот за что не люблю си-подобные языки, так это как раз за кучу "лишних" скобок.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823859
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerНе помните приоритетность - плохо. Равно можете не помнить правила дорожного движения, правила грамматики итд.Приоритетность в разных языках и даже диалектах разная. В отличие от ПДД. Я бы посмотрел, как бы ты помнил ПДД, будь они свои для каждой улицы...

George-IIIНасколько использование приоритетности выполнения операторов прибавляет крутизны. По мне так просто создается плохочитаемый код.
Для начала подели приоритетность на абсолютную и языкозависимую. Использование первой естественно. Использование второй - более чем сомнительное занятие. Код не только плохочитаем, но и может оказаться непереносимым. Например, в MS SQL приоритет XOR выше, чем у NOT, а в MySQL наоборот...
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823867
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinasoftwarerНе помните приоритетность - плохо. Равно можете не помнить правила дорожного движения, правила грамматики итд.Приоритетность в разных языках и даже диалектах разная. В отличие от ПДД. Я бы посмотрел, как бы ты помнил ПДД, будь они свои для каждой улицы...
Я бы посмотрел, как ты программируешь на наборе языков, сравнимом с количеством улиц.

ПДД свои для каждой страны, но особых проблем у меня не возникло. Просто перед пересечением границы стоит прочитать список "что там не так и как именно". При этом пересекать границы приходится пожалуй что чаще, чем менять языки программирования. Ну а для того, что входит в текущий набор... понимать приоритеты для трёх-четырёх языков опять-таки никаких проблем не вызывает.

AkinaДля начала подели приоритетность на абсолютную и языкозависимую. Использование первой естественно. Использование второй - более чем сомнительное занятие. Код не только плохочитаем, но и может оказаться непереносимым. Например, в MS SQL приоритет XOR выше, чем у NOT, а в MySQL наоборот...
Блестящий совет. То есть завтра какой-нибудь придурок делает какую-нибудь явную хрень (типа приоритета XOR выше, чем у NOT), и сразу же тот код, который сегодня был естественным и хорошим, завтра же становится более чем сомнительным и плохим.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823905
For All
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivнаоборот, лишние скобки создают нечитаемый код.
поэтому лишние скобки нужно убирать.LISP не может согласиться с вами
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823910
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerНапример, в MS SQL приоритет XOR выше, чем у NOT
Хотя если секунду подумать, вообще интересно. Как тогда этот транслятор обходится с выражением NOT A XOR NOT B.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823924
Фотография George-III
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем спасибо за ответы
MasterZivУчи математику и булеву алгебру, если ты ещё их не знаешь (хотя это совсем странно, 4 класс школы, если я не ошибаюсь, а булева -- нач. курс института
Нет, я знаю приоритеты и арифметических операторов (*,+,/,-). И операторов булевой алгебры, просто для сложных выражений, которые составлены из множества булевых операторов, гораздо проще ориентироваться в коде, если приоритеты выставляются круглыми скобками.
MasterZiv но на это я дам подсказку -- AND -- называют логическим умножением (& или && ),
OR -- логическим сложением (| или ||), поэтому относительные приоритеты у этих операций такие же, как и у соотв. операций алгебры чисел -- у AND больше, у OR меньше. Запомнив эти другие названия этих операций ты всегда будешь помнить их приоритеты. Надо ещё запомнить, что логическое НЕ имеет самый большой приоритет (больше AND и OR), можно считать, что NOT -- это логический унарный минус (смена знака). А XOR используется достаточно редко, там можно и скобки поставить.)
Спасибо, тоже известно, но не помешает продублировать в памяти.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823955
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerТо есть завтра какой-нибудь придурок делает какую-нибудь явную хрень (типа приоритета XOR выше, чем у NOT), и сразу же тот код, который сегодня был естественным и хорошим, завтра же становится более чем сомнительным и плохим.
Нет, он и раньше был плохим, просто не каждый это понимал.

Пример такого разночтения я привёл. И те, кто переносит свои выросшие проекты с MySQL на MS SQL, хлебают своего же дерьма полной ложкой, если заблаговременно не позаботились в т.ч. и об этой стороне переносимости кода.

Что же до "придурок" - те системы, которые широко используются, настолько широко, что с их пониманием приоритетности приходится считаться, создают вовсе даже не придурки. И их понимание приоритетности никогда не строится на пустом месте и не высасывается из пальца. Прежде чем называть их придурками, надо получить на это право - как минимум созданием чего-либо аналогичного по масштабу значимости.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823964
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarersoftwarerНапример, в MS SQL приоритет XOR выше, чем у NOT
Хотя если секунду подумать, вообще интересно. Как тогда этот транслятор обходится с выражением NOT A XOR NOT B.
Вариантов два.
NOT (A XOR NOT B) - так посчитает MS SQL
(NOT A) XOR (NOT B) - так посчитает MySQL
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823979
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сегодняшняя неделя пройдет под флагом "синтаксических холиваров".
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823983
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinasoftwarerТо есть завтра какой-нибудь придурок делает какую-нибудь явную хрень (типа приоритета XOR выше, чем у NOT), и сразу же тот код, который сегодня был естественным и хорошим, завтра же становится более чем сомнительным и плохим.
Нет, он и раньше был плохим, просто не каждый это понимал.
В том числе Akina 16944631 , согласно которому он был "естественным" до тех пор, пока у всех было одинаково.

AkinaИ те, кто переносит свои выросшие проекты с MySQL на MS SQL, хлебают своего же дерьма полной ложкой, если заблаговременно не позаботились в т.ч. и об этой стороне переносимости кода.
Как бы деликатно сказать.... сама постановка вопроса настолько идиотская, что вовсе не приоритет операций будет в этом случае главной проблемой.

AkinaЧто же до "придурок" - те системы, которые широко используются, настолько широко, что с их пониманием приоритетности приходится считаться, создают вовсе даже не придурки. И их понимание приоритетности никогда не строится на пустом месте и не высасывается из пальца.
Вы плохо представляете себе жизненный цикл систем. Скажем, однажды, в конце семидесятых годов, некоторые люди, которые писали на ассемблере первую версию Oracle, выбрали для хранения строк "паскалевский" формат, ибо им так было удобнее по их инструментальным средствам. Чуть позже, в конце восьмидесятых годов, другие люди, которые писали альтернативные rdbms на сях, выбрали для хранения строк "сишный" формат, ибо им так было удобнее по их инструментальным средствам. Прямым следствием этих двух решений стали бущующий по сей день идиотизм "пустая строка должна отличаться от null" и флейм "в оракле строки не как везде". Подобные эпизоды, безусловно, появляются не на пустом месте, но если Вы думаете, что где-то там сидят высоколобые мудрые разработчики и тщательнейше планируют все варианты и их последствия на сорок лет вперёд, то Вы глубоко заблуждаетесь.

Тем не менее, если о пустых строках в принципе можно спорить, то ряд подобных "не из пальца" решений иначе как идиотизмом не назовёшь. Скажем, в том же MSSQL очень долго unique constraint допускал один и только один null в таблице, а на попытку вставить второй говорил "нарушение уникальности". И описанная Вами оригинальная схема приоритетов - если это действительно так - ровно из той же серии. Хотя у того и другого, безусловно, есть какие-то внутренние причины, и при желании даже можно раскопать, какие.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823985
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaВариантов два.
NOT (A XOR NOT B) - так посчитает MS SQL
По идее, он вообще должен выдать синтаксическую ошибку в этом случае и требовать записать NOT A XOR (NOT B). В противном случае грамматика вместо LR(x) или чего-нибудь другого приятного становится контекстно-свободной с соответствующими последствиями для удобства и эффективности транслятора.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823991
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я тут на бумажке таблицу истинности набросал.

Вобщем

Код: plaintext
1.
(NOT A) XOR (NOT B) = A XOR B



А вы говорите - слон...
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38823997
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЯ тут на бумажке таблицу истинности набросал. Вобщем
Дык. Именно преобразованием в обратную сторону я это и получил, прикидывая, для чего такие приоритеты вообще могут понадобиться :) Правда имхо такие вещи нужно делать в уме, равно как всякие not (a and b) etc.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824017
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если не путаю:
Код: sql
1.
NOT (A XOR B) = (NOT A) XOR B = A XOR (NOT B)


т.е. вообще пофиг что приоритетнее XOR или NOT

Приведите кто-нибудь реальный пример когда приоритет меняет результат. Я такой придумать не смог.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824023
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T, Вы правы, если говорить только о XOR и NOT. Проблему представляет другое, а именно то, что против всякой привычной логики, XOR оказывается по приоритету выше AND.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824025
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
George-III просто для сложных выражений , которые составлены из множества булевых операторов, гораздо проще ориентироваться в коде, если приоритеты выставляются круглыми скобками.Судя по начавшемуся холиварчику, следует не только ставить скобки, но и желательно весьма сложные выражения подсчитывать за несколько ходов, разделяя их на более простые и храня промежуточные результаты в переменных.

Хотя, вам неплохо было бы привести пример сложного безскобочного выражения, так было бы яснее.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824026
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот достаточно частый пример который я объясняю своим девелоперам.

Код: plaintext
1.
2.
3.
4.
5.
int progress = getProgress();

int percent = 100 * progress/MAX_CNT; // Incorrect.

int percent = (100 * progress)/MAX_CNT; // Correct.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824046
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
For AllLISP не может согласиться с вами
В лиспе лишних скобок нет :)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824054
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyFor AllLISP не может согласиться с вами
В лиспе лишних скобок нет :)
+1
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824055
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S.G.желательно весьма сложные выражения подсчитывать за несколько ходов, разделяя их на более простые и храня промежуточные результаты в переменных.До завершения стадии отладки это может быть полезным.

softwarerописанная Вами оригинальная схема приоритетов - если это действительно так - ровно из той же серии.Несомненно. Но она немного упрощает жизнь.

PS. Мне лично скобок как бы не жалко. И лишних переменных тоже. Читабельность кода мне роднее и дороже - впрочем, я не пишу критичных секций, так что дополнительные миллисекунды и байты погоды не делают.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824076
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблемы с приоритетом идут как правило на стыке арифметических и логических операций.

тут достаточно помнить, что приоритеты арифметических операций и операций отношения больше, чем у логических.

Вот за что не люблю си-подобные языки, так это как раз за кучу "лишних" скобок.


их там как раз нет, за это люби свой любимый паскаль.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824079
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
For AllMasterZivнаоборот, лишние скобки создают нечитаемый код.
поэтому лишние скобки нужно убирать.LISP не может согласиться с вами


в лиспе вообще таких проблем нет, там нет приоритетов операций.
скобок конечно дофига...
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824093
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как уменьшить скобки.

Со ссылкой на http://bytes.com/topic/c/answers/219683-pros-cons-define-begin

Код: plaintext
1.
2.
3.
4.
5.
#define IF if(
#define THEN )
#define BEGIN {
#define END }
#define eq ==



converts this:

Код: plaintext
1.
2.
3.
if(x == 1) {
puts("The value is 1");
}



into this:

Код: pascal
1.
2.
3.
4.
IF x eq 1 THEN
BEGIN
puts("The value is 1");
END
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824099
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivих там как раз нет, за это люби свой любимый паскаль.
Потише демонстрируй свою некомпетентность, смешно.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824106
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

Код: sql
1.
2.
3.
if (x == 1 && y == 1) ... // С

if (x = 1) and (y =1) ... // паскаль


Так где, говорите, больше скобочек?
Я вообще молчу про то, кому в здравом уме могло прийти в голову что у сравнения меньший приоритет чем у логических операций.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824108
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Let the sruch begin :)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824110
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
развели полемику на пустом месте ) давайте еще пробелы vs табы вспомним =))
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824111
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyLet the sruch begin :)
Habba-habba! I see everything! I see...
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824112
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Код: plaintext
1.
2.
int percent = 100 * progress/MAX_CNT; // Incorrect.
int percent = (100 * progress)/MAX_CNT; // Correct.

А в чём проблема?
Или просто: "второй вариант чётко демонстрирует понимание особенностей целочисленного деления"?
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824113
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyТак где, говорите, больше скобочек?
В си-подобных языках. Примеры, думаю, Вы знаете не хуже меня.

Anatoly Moskovskyпро то, кому в здравом уме могло прийти в голову что у сравнения меньший приоритет чем у логических операций.
Да, для того, кто не думает про одноимённые битовые операции, это аргумент.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824114
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема в том, что первый вариант не работает. Даёт константу на всём диапазоне прогресса.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824115
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JeStoneдавайте еще пробелы vs табы вспомним
Кстати да, давайте. Я постоянно сталкиваюсь с конфликтами слияния веток из-за разных пробелов/табов у разных разработчиков.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824117
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerAnatoly MoskovskyТак где, говорите, больше скобочек?
В си-подобных языках. Примеры, думаю, Вы знаете не хуже меня.
Вы фигурные шоли имеете в виду? :)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824118
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyВы фигурные шоли имеете в виду? :)
Нет, круглые. Долго собираетесь юродствовать?
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824119
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПроблема в том, что первый вариант не работает. Даёт константу на всём диапазоне прогресса.Это что за компилятор меняет порядок вычисления равноприоритетных целочисленных операций???
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824120
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

Я вообще-то пример привел. А вы нет.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824131
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky, я предполагал, что человек с таким количеством сообщений в форуме Си знает хотя бы синтаксис языка. Прошу прощения за ошибку. Пример....

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
function Pi: real;
begin
  Result := 3.1415;
end;
...
function E: real;
begin
  Result := 2.7818;
end;
...
type
  TFunc = function: real;
...
var
  PFunc: TFunc;
...
begin
  PFunc := Pi;
  r := PFunc * PFunc;
  ...
  while a > b do
  ...
  for i := 1 to 5 do
  ...
  repeat until true;
  ...
  if a > b then
  ...
  v := TForm(SomeObject).Visible;
  ...



Думаю, достаточно. Считайте скобочки для сишного варианта.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824148
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

А, вы про скобочки в синтаксисе операторов.
Если сравнить кол-во скобок в С с кол-вом do, : и ; в паскале, то еще не известно кто победит.
А уж по кол-ву набранного текста на единицу полезного кода паскаль точно лидер :)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824171
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyЕсли сравнить кол-во скобок в С с кол-вом do, : и ; в паскале, то еще не известно кто победит.
Тёплое с мягким?

Anatoly MoskovskyА уж по кол-ву набранного текста на единицу полезного кода паскаль точно лидер :)
Вы правы. Офигенная прелесть Паскаля (точнее, дельфы, как его современного представителя) в исключительной информативности кода, по характеристике "прочитал немного красивого кода и всё понял" ему нет равных. Если, конечно, код правильно написан, испортить можно всё, что угодно. Худший из известных мне языков в этом плане - пожалуй, Ява. Хотя в последних версиях надо отметить большой прогресс, на семёрке уже даже вполне приятно работать.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824363
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerВы правы. Офигенная прелесть Паскаля (точнее, дельфы, как его современного представителя) в исключительной информативности кода, по характеристике "прочитал немного красивого кода и всё понял" ему нет равных. Если, конечно, код правильно написан, испортить можно всё, что угодно. Худший из известных мне языков в этом плане - пожалуй, Ява. Хотя в последних версиях надо отметить большой прогресс, на семёрке уже даже вполне приятно работать.
Это все субъективно. Для меня, например, все C-подобные языки с точки зрения синтаксиса гораздо больше подходят под фразу "прочитал немного красивого кода и всё понял", чем тот же Делфи, Python, Ruby и т.д.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824410
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonВот достаточно частый пример который я объясняю своим девелоперам.

Код: plaintext
1.
2.
3.
4.
5.
int progress = getProgress();

int percent = 100 * progress/MAX_CNT; // Incorrect.

int percent = (100 * progress)/MAX_CNT; // Correct.


А если так:
Код: plaintext
1.
2.
progress =  40000000
MAX_CNT = 2000000000


Тогда оба твоих варианта дают 0
Так правильно работает
Код: plaintext
1.
int percent =  progress / (MAX_CNT / 100); 
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824448
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerAnatoly Moskovsky, я предполагал, что человек с таким количеством сообщений в форуме Си знает хотя бы синтаксис языка. Прошу прощения за ошибку. Пример....

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
function Pi: real;
begin
  Result := 3.1415;
end;
...
function E: real;
begin
  Result := 2.7818;
end;
...
type
  TFunc = function: real;
...
var
  PFunc: TFunc;
...
begin
  PFunc := Pi;
  r := PFunc * PFunc;
  ...
  while a > b do
  ...
  for i := 1 to 5 do
  ...
  repeat until true;
  ...
  if a > b then
  ...
  v := TForm(SomeObject).Visible;
  ...



Думаю, достаточно. Считайте скобочки для сишного варианта.

Вы ошиблись(или опечатались) в значении числа Эйлера(если вы его имели ввиду). Расскажу как легко его запомнить. Первая цифра после запятой 7, а потом дважды будет год рождения Льва Николаевича Толстого 1828.

Первая часть вашего примера, на языке Си, будет выглядеть следующим образом
Код: plaintext
1.
2.
const double pi = 3.1415;
const double e = 2.718281828;  



Не вижу какой-то красоты в том что вы привели, код Си красивее. Большая часть скобок заменяется словами begin и end. Мне кажется, что символов будет больше, 8 вместо двух(). Приведите пожалуйста аналог следующего кода Си на Паскале

Код: plaintext
1.
2.
while ((int c = getc(in)) != EOF)
	putc(c, out);
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824460
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,
вы конечно может быть дружите, и потому когда вы обзываете представителей нашего Сообщества С++, это нормально(шутите), но если вы не дружите, и это всерьёз, то вы полностью неправы, заканчивайте.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824507
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky,

как мне кажется приоритеты операторов сравнения в Паскале специально выбраны таким образом,
чтобы скобки не требовались в простых случаях вроде
Код: pascal
1.
  if a*x+b=c*x+d then y:=z;
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824518
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, как вы думаете, что лучше, := для присваивания, и = для сравнения, либо = для присваивания, и == для сравнения ?
У нас два фактора, частота появления оператора, и читабельность.
1. Инициализация встречается в среднем чаще(собственно потому в Си, токен присваивания занимает 1 символ)
2. В математике присваивание выполняется в один символ
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824528
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JeStonesoftwarerВы правы. Офигенная прелесть Паскаля (точнее, дельфы, как его современного представителя) в исключительной информативности кода, ...
Это все субъективно. Для меня, например, ...
Вы не совсем правы. Здесь есть три составляющих. Во-первых, согласен, субъективная - уровня "мне больше/меньше нравятся фигурные скобки чем begin/end". Во-вторых, привычка; наработанная практика восприятия кода на определённом языке, его типовых приёмов итп. И в-третьих таки объективная, порождённая (не)соответствием подходов и средств языка задаче.

Чтобы увидеть, что объективная составляющая точно существует.. ну давайте возьмём, например, какой-нибудь сложный, но воспринимаемый SQL-запрос, и представим себе, как будет выглядеть делающий то же самое код на plain C.

Так вот, я говорю именно об объективной составляющей. При этом, поскольку мне нравится и Си как таковой, и Паскаль как таковой, полагаю, что не вношу в оценку большой субъективности. В каждом из них есть то, что мне нравится, и то, что не нравится.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824536
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryПервая часть вашего примера, на языке Си, будет выглядеть следующим образом
Саш, я привёл пример функции без параметров. Не надо переделывать постановку, это недостойно.

SashaMercuryНе вижу какой-то красоты в том что вы привели, код Си красивее.
Я привёл пример мест, в которых Си требует кучу мешающих восприятию круглых скобок. Судя по тому, что Вы начинаете менять постановку задачи и говорить о чём-то другом, свой тезис про скобки я обосновал достаточно убедительно.

SashaMercuryМне кажется, что символов будет больше,
Наверное. А мы экономим символы? Тогда лучше всего использовать однобуквенные идентификаторы, да и вообще перейти работать на APL.

SashaMercuryПриведите пожалуйста аналог следующего кода Си на Паскале
Без проблем.

Код: pascal
1.
while not Eof(Input) do Write(Output, ReadChar(Input));


Кстати, и здесь скобок меньше, чем в Вашем варианте (что неудивительно).
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824546
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryКстати, как вы думаете, что лучше, := для присваивания, и = для сравнения, либо = для присваивания, и == для сравнения ?
Безразлично. Я спокойно работаю и с тем, и с другим, и вперемешку.

SashaMercuryУ нас два фактора, частота появления оператора, и читабельность.
Неверно. Основной фактор, куда более важный, чем оба названных - вероятность ошибиться, использовав одно вместо другого. С этой точки зрения :=, пожалуй, лучше. Лично я никогда так не ошибался и не очень понимаю, как ошибаются другие. Но судя по тому, что в компиляторы пихают варнинги на присваивания в условиях, проблема довольно актуальна.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824557
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer Саш, я привёл пример функции без параметров. Не надо переделывать постановку, это недостойно.
не понял задумки, тут вы правы

softwarer
Код: pascal
1.
while not Eof(Input) do Write(Output, ReadChar(Input));



а вот тут уже вы переделываете постановку, оригинал был с присваиванием в условии :)

Код: plaintext
1.
2.
while ((int c = getc(in)) != EOF)
	putc(c, out);
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824572
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TmaytonВот достаточно частый пример который я объясняю своим девелоперам.

Код: plaintext
1.
2.
3.
4.
5.
int progress = getProgress();

int percent = 100 * progress/MAX_CNT; // Incorrect.

int percent = (100 * progress)/MAX_CNT; // Correct.


А если так:
Код: plaintext
1.
2.
progress =  40000000
MAX_CNT = 2000000000


Тогда оба твоих варианта дают 0
Так правильно работает
Код: plaintext
1.
int percent =  progress / (MAX_CNT / 100); 


Верно. Этот пример требует пояснений. Я выношу его на собеседование. Задача рисования ProgressBar
часто актуальна. При этом надо помнить о переполнениях разрядной сетки.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824583
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть и обратный случай. Максимальное число заявок к примеру MAX_CNT может быть меньше
100 штук. В этом случае целочисленное деление даст сильно "грубый" результат. Опять константа.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824639
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЕсть и обратный случай. Максимальное число заявок к примеру MAX_CNT может быть меньше
100 штук. В этом случае целочисленное деление даст сильно "грубый" результат. Опять константа.
Универсального решения нет. Надо проверять значение MAX_CNT и считать тем или иным способом.

Хотя можно перевести в double и тогда все три способа подойдут.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824653
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так универсально:
Код: sql
1.
int percent = 100. * progress/MAX_CNT;



Кстати почему ты считаешь некорректно
Код: plaintext
1.
int percent = 100 * progress/MAX_CNT; // Incorrect.


умножение и деление имеют одинаковый приоритет, т.е. будет выполнено так
Код: plaintext
1.
int percent = (100 * progress)/MAX_CNT; // Correct.


по крайней мере для MSVC это одно и тоже
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
	int p1 = 100 * progress/MAX_CNT; // Incorrect.
00413046  mov         eax,dword ptr [ebp-0Ch] 
00413049  imul        eax,eax,64h 
0041304C  cdq              
0041304D  idiv        eax,dword ptr [ebp-18h] 
00413050  mov         dword ptr [ebp-24h],eax 

	int p2 = (100 * progress)/MAX_CNT; // Correct.
00413053  mov         eax,dword ptr [ebp-0Ch] 
00413056  imul        eax,eax,64h 
00413059  cdq              
0041305A  idiv        eax,dword ptr [ebp-18h] 
0041305D  mov         dword ptr [ebp-30h],eax 

...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824704
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TУниверсального решения нет. Надо проверять значение MAX_CNT и считать тем или иным способом
Либо приводить к какому-нибудь заведомо достаточному типу. Либо нормировать (типа if (max_cnt > max_int/100) { max_cnt /= 100; progress /= 100;}
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824712
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryа вот тут уже вы переделываете постановку, оригинал был с присваиванием в условии :)
Вы ещё скажите, что постановка требует использовать функцию getc :)

Сишные операции - присваивание, запятая, тернарная - безусловно, относятся к достоинствам языка. Но как видите, в Вашем примере она используется как ненужная заплата на недостаток дизайна стандартной библиотеки :)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824729
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T, хм... гдеж я этот приоритет-то взял. Из каких языков.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824741
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonDima T, хм... гдеж я этот приоритет-то взял. Из каких языков.
хз, везде вроде слева направо вычисляется

могу только предположить что изначально было
Код: sql
1.
progress / MAX_CNT * 100
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824789
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю да.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824794
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerSashaMercuryа вот тут уже вы переделываете постановку, оригинал был с присваиванием в условии :)
Вы ещё скажите, что постановка требует использовать функцию getc :)

Сишные операции - присваивание, запятая, тернарная - безусловно, относятся к достоинствам языка. Но как видите, в Вашем примере она используется как ненужная заплата на недостаток дизайна стандартной библиотеки :)

softwarer
Код: pascal
1.
while not Eof(Input) do Write(Output, ReadChar(Input));



Функция Eof(stream) равносильна getc()+ungetc() верно ? Т.е. берём символ из потока, проверяем его, и кладём его обратно(в том смысле, что указатель в потоке перемещается обратно или как-то иначе, но по смыслу аналогично ). Возвращает результат проверки. Или ошибаюсь ?
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824798
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

расcтроил Марка :D не стыдно ;)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824801
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryФункция Eof(stream) равносильна getc()+ungetc() верно ? Т.е. берём символ из потока, проверяем его, и кладём его обратно(в том смысле, что указатель в потоке перемещается обратно или как-то иначе, но по смыслу аналогично ). Возвращает результат проверки. Или ошибаюсь ?
Это квантовый эффект бро! Чтобы "взглянуть" на EOF файла нужно "поток изменить".
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824802
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
есть такой язык, в котором приоритет * и / различаются, но не помню какой..где-то читал, что-ли. Даже не знаю откуда у меня эта информация в голове, не помню
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824805
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryDima T,

расcтроил Марка :D не стыдно ;)
Да ничего не стыдно. Всё норм. Нельзя быть докой во всём. Голова лопнет.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824806
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryФункция Eof(stream) равносильна getc()+ungetc() верно ?
По результату - да, по реализации - нет.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824808
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonSashaMercuryФункция Eof(stream) равносильна getc()+ungetc() верно ? Т.е. берём символ из потока, проверяем его, и кладём его обратно(в том смысле, что указатель в потоке перемещается обратно или как-то иначе, но по смыслу аналогично ). Возвращает результат проверки. Или ошибаюсь ?
Это квантовый эффект бро! Чтобы "взглянуть" на EOF файла нужно "поток изменить".

кто-то перечитал Ткань космоса, или посмотрел Интерстеллар на днях Так я правильно рассуждал, или нет ?
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824811
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,
а как по реализации ? Расскажите пожалуйста
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824813
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonДа ничего не стыдно. Всё норм. Нельзя быть докой во всём. Голова лопнет.
Нельзя, конечно. Но я в какой-то момент обзавёлся привычкой проверять то, что я выношу на люди, и в частности задачи для собеседований. Времени тратится немного, а вот пользы прилично. Особенно когда открываешь для себя что-то новое :)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824814
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonSashaMercuryDima T,

расcтроил Марка :D не стыдно ;)
Да ничего не стыдно. Всё норм. Нельзя быть докой во всём. Голова лопнет.

"расстроил" в том плане, что теперь кому-то придется вспоминать язык, к которому пример выше будет актуален Раз уж привел пример, то нужно довести его до конца ;)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824821
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercurymaytonпропущено...

Это квантовый эффект бро! Чтобы "взглянуть" на EOF файла нужно "поток изменить".

кто-то перечитал Ткань космоса, или посмотрел Интерстеллар на днях Так я правильно рассуждал, или нет ?
Ни то не другое не смотрел и не читал. По поводу функций читаючих "текстовые строки" или "символы".

Ну... они скорее всего являются фасадом для fopen/fread/fclose/fseek, или open/read/close.

В любом случае надо сначала что-то вычитать. Удариться об "ограничитель" и потом принять решение о выходе
из цикла. А делать это через while(.) или do{..} while уже кому как удобнее.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824824
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryа как по реализации ? Расскажите пожалуйста
Язык сам по себе этого не специфицирует. В борландовых реализациях операции опираются на buffered reader, то есть логику можно примерно описать так:

if buffer_empty then read_next_buffer;
result := buffer_empty or text_file and current_char^ = ^Z;
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824830
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercurymaytonпропущено...

Да ничего не стыдно. Всё норм. Нельзя быть докой во всём. Голова лопнет.

"расстроил" в том плане, что теперь кому-то придется вспоминать язык, к которому пример выше будет актуален Раз уж привел пример, то нужно довести его до конца ;)
Вопрос касался арифметики целых и вещественных чисел. Да это так... мелочи.
Что там того прогресс-бара пустяк даже если он глюканёт. Вот наши партнёры
до сих пор деньги из SOAP-сервиса передают как double. Я уж и ругался сначала
явно в тикетах. А потом просто забил. Им так удобнее.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824840
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer, вот код на языке Си

Код: plaintext
1.
2.
while ((int c = getc(in)) != EOF)
	putc(c, out);




Аналогичный код на языке Паскаль

Код: pascal
1.
while not Eof(Input) do Write(Output, ReadChar(Input));



Вы сравнили эти участки кода, и сделали следующий вывод
softwarerСишные операции - присваивание, запятая, тернарная - безусловно, относятся к достоинствам языка. Но как видите, в Вашем примере она используется как ненужная заплата на недостаток дизайна стандартной библиотеки :)

Я же сравниваю их, и делаю следующий:
Код на Си оптимальней, так как на каждой итерации цикла, мы делаем одну операцию чтения из потока, в случае аналогичного кода на языке Паскаль, чтение символа происходит дважды, на каждой итерации. Потому присваивание в условии цикла, я не могу назвать недостатком языка, это его преимущество.

Содержит ли мой вывод ошибки ?
Код на Си, выполнится быстрее чем данный конкретный код на языке Паскаль?
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824878
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryВы сравнили эти участки кода, и сделали следующий вывод
Мм.. это вывод в общем безотносительно этих участков кода. Скорее он объясняет, почему я ответил Вам именно этим примером.

SashaMercuryЯ же сравниваю их, и делаю следующий:
Код на Си оптимальней, так как
Саш, попробуйте на секунду остановиться и сформулировать: а что Вы вообще хотели доказать, вступая в дискуссию? Смотрите: изначально речь шла о круглых скобках. Потом - о красоте кода. Потом - об изобразительных возможностях. Теперь - об эффективности. Глядя на всё это, складывается ощущение, что Вы хотите доказать "лучше хоть чем-нибудь неважно чем".

SashaMercuryна каждой итерации цикла, мы делаем одну операцию чтения из потока, в случае аналогичного кода на языке Паскаль, чтение символа происходит дважды, на каждой итерации.
Вы здесь считаете абстрактных попугаев, что делает рассуждения бессмысленными. Просто представьте себе, что переменная C является полем объекта "поток", то есть паскалевский объект реализован примерно так:

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
private
  C: integer;

function Eof: boolean;
begin
  Result := C <> -1;
end;

function ReadChar: char;
begin
  Result := C; {теряем старший байт}
  C := getc();
end;



Как видите, с одной стороны, все Ваши рассуждения про "два чтения" никуда не уходят, с другой стороны, выполняемые операции прямо-таки демонстративно одинаковы.

SashaMercuryПотому присваивание в условии цикла, я не могу назвать недостатком языка, это его преимущество.
Присваивание в условии никто и не называет недостатком языка. Недостатком дизайна библиотеки я назвал EOF как результат getc. Это влечёт за собой множество неудобств, начиная от int-результата и заканчивая тем, что fgetc таки может возвращать EOF как "очередной прочитанный символ из середины файла" и таки надо использовать feof(). А ещё, если мне не изменяет память, тот же EOF может возвращаться как индикатор ошибки, что делает ситуацию вообще бредовой.

SashaMercuryКод на Си, выполнится быстрее чем данный конкретный код на языке Паскаль?
Представления не имею. В своё время я наблюдал, как два очень крутых прога в течение нескольких лет соревновались "кто быстрее на той или иной задаче", как раз таки один писал на TP, другой на MC. В принципе, учитывая, что C дизайнился именно под максимальную эффективность, можно ожидать от него незначительно лучших результатов (незначительно - потому что основные траты всё равно пойдут на вызовы чтения в ОС). С другой стороны, я помню N случаев, когда Си неожиданно проседал из-за отсутствия какой-либо важной особенности. Скажем, довольно долго он не умел передавать параметры функций через регистры (а сейчас, кстати, умеет?)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824886
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer...Скажем, довольно долго он не умел передавать параметры функций через регистры (а сейчас, кстати, умеет?)
IMHO:
1) у него сейчас как минимум inline ф-ции есть
2) явно зависит от компилятора. У M$ как минимум уже давно есть __fastcall
http://msdn.microsoft.com/ru-ru/library/6xa169sk.aspx
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824912
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryКод на Си, выполнится быстрее чем данный конкретный код на языке Паскаль?
Протестую. Вопрос не имеет прямого отношения к теме приоритетности.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824914
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev1) у него сейчас как минимум inline ф-ции есть
Они у него есть очень давно, как и у Паскаля. Как и судя по всему уже достаточно давно есть fastcall, спасибо за подсказку.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38824948
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,
мой первоначальный вопрос, был в контексте скобок(хотел сравнить 2 участка кода по этому критерию), потому попросил привести аналогичный код, но как мне показалось, что код приведённый вами, всё-же не аналогичен, потому в дальнейшем я проводил рассуждения об участках кода по части идентичности.
Нет, не пытаюсь ни в коем случае сказать что язык Си лучше хоть в чём-то, для меня очевидно, что он лучше во всём, так же как очевиден тот факт, что вы так не считаете, и что ни я, никто другой не сможет вас переубедить, как и очевидно, что это наши субъективные мнения и что писать программы, и получать от этого удовольствие, можно на любом языке программирования
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825024
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer Присваивание в условии никто и не называет недостатком языка. Недостатком дизайна библиотеки я назвал EOF как результат getc. Это влечёт за собой множество неудобств, начиная от int-результата и заканчивая тем, что fgetc таки может возвращать EOF как "очередной прочитанный символ из середины файла" и таки надо использовать feof(). А ещё, если мне не изменяет память, тот же EOF может возвращаться как индикатор ошибки, что делает ситуацию вообще бредовой.

Очевидным решение проблемы определения конца файла будет возврат символа не принадлежащего пространству возможных элементов,так как char и int принадлежат пространству integer types, и int является расширением char, то очевидным символом для возврата будет символ из пространства I\C. И тут мы вспоминаем чудесный механизм integer promotion. Потому мне не кажется, что возврат int есть неудобство, это логичное поведение системы.

PS
Вот если бы имели дело с числами Фибоначчи, то очевидной последовательностью конца, были бы две единицы подряд. mayton не даст соврать
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825045
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly MoskovskyJeStoneдавайте еще пробелы vs табы вспомним
Кстати да, давайте. Я постоянно сталкиваюсь с конфликтами слияния веток из-за разных пробелов/табов у разных разработчиков.
Постоянно?
А как же корпоративные соглашения по оформлению кода, возможности различных IDE по замены табов на пробелы, следование контрактам(читать "разделения обязанностей"), при которых каждый разработчик (и только он) разрабатывает свою часть приложения, при этом взаимодействуя с неподконтрольными ему модулями через слабосвязные интерфейсы и прочие прелести командной разработки?
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825054
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JeStoneпри которых каждый разработчик (и только он) разрабатывает свою часть приложения,
Этот идиотизм надо было убить ещё лет сорок назад. Но, думаю, до окончательного его изживания я так и не доживу.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825062
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JeStoneAnatoly Moskovskyпропущено...

Кстати да, давайте. Я постоянно сталкиваюсь с конфликтами слияния веток из-за разных пробелов/табов у разных разработчиков.
Постоянно?
А как же корпоративные соглашения по оформлению кода, возможности различных IDE по замены табов на пробелы, следование контрактам(читать "разделения обязанностей"), при которых каждый разработчик (и только он) разрабатывает свою часть приложения, при этом взаимодействуя с неподконтрольными ему модулями через слабосвязные интерфейсы и прочие прелести командной разработки?
Ну ты уж не вали всё в одну корзинку. Контракты - это контракты. Это программные сущности.
А табуляторы - это соглашение внутри команды. Собрались. Договорились. Настроили IDE одинаково и пишут.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825063
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryЯ же сравниваю их, и делаю следующий:
Код на Си оптимальней, так как на каждой итерации цикла, мы делаем одну операцию чтения из потока, в случае аналогичного кода на языке Паскаль, чтение символа происходит дважды, на каждой итерацииНичего в Паскале дважды не читается.
eof(файл) не читает символы. Вааще. Эта функция просто смотрит значение флага, который является деталью реализации типа file и изначально находится в состоянии false.
Функция чтения и читает символ и, при необходимости, меняет состояние флага на true.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825066
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerJeStoneпри которых каждый разработчик (и только он) разрабатывает свою часть приложения,
Этот идиотизм надо было убить ещё лет сорок назад. Но, думаю, до окончательного его изживания я так и не доживу.
Это участь особо крупных проектов. Неизбежно вобщем-то.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825067
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerJeStoneпри которых каждый разработчик (и только он) разрабатывает свою часть приложения,
Этот идиотизм надо было убить ещё лет сорок назад. Но, думаю, до окончательного его изживания я так и не доживу.
Это почему?
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825071
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonJeStoneпропущено...

Постоянно?
А как же корпоративные соглашения по оформлению кода, возможности различных IDE по замены табов на пробелы, следование контрактам(читать "разделения обязанностей"), при которых каждый разработчик (и только он) разрабатывает свою часть приложения, при этом взаимодействуя с неподконтрольными ему модулями через слабосвязные интерфейсы и прочие прелести командной разработки?
Ну ты уж не вали всё в одну корзинку. Контракты - это контракты. Это программные сущности.
А табуляторы - это соглашение внутри команды. Собрались. Договорились. Настроили IDE одинаково и пишут.
В данном конкретном случае под контрактом понималась не программная сущность (аля interface), а английское contract (соглашение, договор). И таки, все эти 3 пункта я свалил в одну кучу, потому что все они от части помогают избавить если не от всех конфликтов, то от очень многих
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825072
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryдля меня очевидно, что он лучше во всём,
Так не бывает. Можно нежно любить свой бугатти вейрон, но таки для некоторых задач лучше подходит камаз, а для некоторых - велосипед.

При этом, нежно любя свой бугатти вейрон, стоит таки знать и понимать его недостатки. Скажем, если он сломается где-нибудь под Тюменью, будет достаточно проблематично найти запчасть.

SashaMercuryОчевидным решение проблемы определения конца файла будет возврат символа не принадлежащего пространству возможных элементов
Одно из важных качеств разработчика - умение выбирать лучшее решение, не останавливаясь на очевидном . Описанное Вами - давно известный путь в адъ. Почти все проходили это, засовывая всякие минус единицы в возраст и прочие "что никак не может встретиться". Потом приходят неанглоязычные пользователи, и вдруг оказывается, что виндовая буква "я" совершенно случайно равна EOF (char ведь у нас signed, мы помним, да?). Потом у нас приходит unicode, и вдруг оказывается, что в пространстве int16 перестаёт хватать места. Итдитп., и в итоге оказывается, что в библиотеку таки попадает feof(), потому что гениальной идеи "возврата символа не принадлежащего пространству" таки не хватает, чтобы прикрыть задницу.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825080
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovSashaMercuryЯ же сравниваю их, и делаю следующий:
Код на Си оптимальней, так как на каждой итерации цикла, мы делаем одну операцию чтения из потока, в случае аналогичного кода на языке Паскаль, чтение символа происходит дважды, на каждой итерацииНичего в Паскале дважды не читается.
eof(файл) не читает символы. Вааще. Эта функция просто смотрит значение флага, который является деталью реализации типа file и изначально находится в состоянии false.
Функция чтения и читает символ и, при необходимости, меняет состояние флага на true.

Да ну. Как же в первый раз этот флаг установится ? Если пока ничего не было прочитано, и первый символ и есть конец файла. Пока, я вижу лишь лишние операции, не более.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825089
Фотография SashaMercury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerSashaMercuryдля меня очевидно, что он лучше во всём,
Так не бывает. Можно нежно любить свой бугатти вейрон, но таки для некоторых задач лучше подходит камаз, а для некоторых - велосипед.

При этом, нежно любя свой бугатти вейрон, стоит таки знать и понимать его недостатки. Скажем, если он сломается где-нибудь под Тюменью, будет достаточно проблематично найти запчасть.

собственно, по этой причине, я и написал про субъективность мнений

softwarerSashaMercuryОчевидным решение проблемы определения конца файла будет возврат символа не принадлежащего пространству возможных элементов
Одно из важных качеств разработчика - умение выбирать лучшее решение, не останавливаясь на очевидном . Описанное Вами - давно известный путь в адъ. Почти все проходили это, засовывая всякие минус единицы в возраст и прочие "что никак не может встретиться". Потом приходят неанглоязычные пользователи, и вдруг оказывается, что виндовая буква "я" совершенно случайно равна EOF (char ведь у нас signed, мы помним, да?). Потом у нас приходит unicode, и вдруг оказывается, что в пространстве int16 перестаёт хватать места. Итдитп., и в итоге оказывается, что в библиотеку таки попадает feof(), потому что гениальной идеи "возврата символа не принадлежащего пространству" таки не хватает, чтобы прикрыть задницу.
не готов ответить. (хотя мог бы заняться демагогией и сказать что это проблемы кодировок, но не буду )
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825096
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЭто участь особо крупных проектов. Неизбежно вобщем-то.
Это участь плохо управляемых проектов. Соглашусь с тем, что у "особо крупных" повышен риск оказаться "недостаточно хорошо управляемым", тем не менее, последствия вполне очевидны.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825103
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryсобственно, по этой причине, я и написал про субъективность мнений
А где Вы здесь видите субъективность? То, что на бугатти не стоит возить три тонны щебёнки - факт. То, что под Тюменью вряд ли есть для него запчасти - тоже факт. Субъективность в том, что "любить или не любить", но любовью не стоит закрывать факты. Собственно, любовь к бугатти проявится как раз в том, чтобы возить щебёнку на камазе :)
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825105
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashaMercuryДа ну. Как же в первый раз этот флаг установится ?Натурально, процедурами open/reset. Если я правильно помню имена
Только и они ничего читать не будут: если файл успешно открыт/создан - признак "конец файла" установлен в ложь.Если пока ничего не было прочитано, и первый символ и есть конец файлаПостарайтесь, всё-таки, абстрагироваться от сишного подхода.
Паскалевский код сначала проверяет достижение конца файла и только потом пробует читать. Просто потому, что поведение функций чтения по достижении конца файла - не определено. Могут вернуть #0, могут последний прочитанный символ. Имеют право вернуть результат random(). Неопределённое поведение оно такое Пока, я вижу лишь лишние операции, не более.Уж не обижайтесь, но "есть много, друг Горацио ...".
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825133
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JeStoneЭто почему?
Потому что нетехнологично. Просто представьте себе, как товарищ Сталин говорит: хочу, чтобы в параде девятого мая принял участие наш новый бомбардировщик. А ему отвечают: не получится, потому что токарь дядя Вася ушёл в запой, а узел крепления элеронов у нас кроме него никто не вытачивает.

"Каждый ковыряет свою песочницу" - это типичная идея неуправляемого проекта, без общей идеологии, без общего стиля и без команды. Исход такого проекта немного предсказуем. А бытиё.... помню один анекдотический случай. В конторе, в которой к моменту моего прихода был принят такой стиль. Прихожу к человеку, ведавшему неким модулем. Говорю: хочу вот такую доработку. Он говорит: о, отличная мысль. Я говорю: я посмотрел, для этого надо добавить одну вот такую строчку вот сюда. Он: круто. Я говорю: когда будет готово? Он: где-то через месяц. Я: Ты охренел? Там же одна строчка, и это сэкономит мне дня три работы в том, что мне нужно сдать через неделю. Он: я сейчас занят приоритетной задачей в другом модуле, приходи через месяц. В итоге пол-дня бегал, пока выбил таки разрешение вставить в чужой модуль эту одну строчку. И ещё хорошо, что выбил.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825145
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer, давай другую крайность представим. Тебе дали доступа на модуль. Ты тихонько закоммитил...
... и тут началось!
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825154
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerJeStoneЭто почему?
Потому что нетехнологично. Просто представьте себе, как товарищ Сталин говорит: хочу, чтобы в параде девятого мая принял участие наш новый бомбардировщик. А ему отвечают: не получится, потому что токарь дядя Вася ушёл в запой, а узел крепления элеронов у нас кроме него никто не вытачивает.

"Каждый ковыряет свою песочницу" - это типичная идея неуправляемого проекта, без общей идеологии, без общего стиля и без команды. Исход такого проекта немного предсказуем. А бытиё.... помню один анекдотический случай. В конторе, в которой к моменту моего прихода был принят такой стиль. Прихожу к человеку, ведавшему неким модулем. Говорю: хочу вот такую доработку. Он говорит: о, отличная мысль. Я говорю: я посмотрел, для этого надо добавить одну вот такую строчку вот сюда. Он: круто. Я говорю: когда будет готово? Он: где-то через месяц. Я: Ты охренел? Там же одна строчка, и это сэкономит мне дня три работы в том, что мне нужно сдать через неделю. Он: я сейчас занят приоритетной задачей в другом модуле, приходи через месяц. В итоге пол-дня бегал, пока выбил таки разрешение вставить в чужой модуль эту одну строчку. И ещё хорошо, что выбил.
Дядю Васю за невозможность исполнения своих обязанностей и пьянство стоит уволить. А что касается второго случая, то что вам мешало отправить pull request своему коллеге? Это никак не конфликтует с концепцией разделения обязанностей по разработке различных модулей приложения.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825190
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonsoftwarer, давай другую крайность представим. Тебе дали доступа на модуль. Ты тихонько закоммитил...
... и тут началось!
А что началось-то? Ну максимум, кто-то потратит пять секунд времени, чтобы откатить мой коммит.

JeStoneДядю Васю за невозможность исполнения своих обязанностей и пьянство стоит уволить.
Верно. А работу стоит организовать так, чтобы пьянство одного дяди Васи не срывало появление бомбардировщика на параде.

JeStoneА что касается второго случая, то что вам мешало отправить pull request своему коллеге?
Если обратите внимание, я в точности это и сделал. Ну с той разницей, что лет на десять раньше, чем появилось такое понятие.

JeStoneЭто никак не конфликтует с концепцией разделения обязанностей по разработке различных модулей приложения.
Никак. Просто сама концепция конфликтует со здравым смыслом.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825234
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarermaytonsoftwarer, давай другую крайность представим. Тебе дали доступа на модуль. Ты тихонько закоммитил...
... и тут началось!
А что началось-то? Ну максимум, кто-то потратит пять секунд времени, чтобы откатить мой коммит.
Я думаю что чел запретил тебе коммитить нетестированный код потому что он - ответственный.

А что такое 5 секунд? Тут-же дело не в 5 секундах а в масштабах разрушений которые вызовет
твой коммит.

Это просто моё ИМХО.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825245
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton...Это просто моё ИМХО.
мое аналогично.

Если кто-то будет, как минимум без уведомление, менять код в моем модуле, при последующих любых жалобах на систему, консультанты/техподдержка будут отправлены к этому человеку искать и исправлять баг.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825262
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЯ думаю что чел запретил тебе коммитить нетестированный код потому что он - ответственный.
Он не мог запретить мне коммитить по той простой причине, что тогда ещё никто не использовал системы контроля версий. Вопрос "почему" совершенно не интересен, логика человека понятна и собственно полностью соответствует полученным им инструкциям. Вопрос в том, что эта система "наседки над кодом" больна на голову, и этот яркий пример показывает то, что регулярно случается везде, где она применяется.

maytonА что такое 5 секунд? Тут-же дело не в 5 секундах а в масштабах разрушений которые вызовет
твой коммит.
Ну так расскажи мне эти масштабы разрушений. Что случится? Распиши сценарий апокалипсиса.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825265
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer, чел чего ты так ощетинился? Знаешь сколько раз я был в твоей ситуации.
Ходил. Упрашивал. Уговаривал. Вобщем это даже не It-шный вопрос.

Он - организационный.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825275
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonsoftwarer, чел чего ты так ощетинился? Знаешь сколько раз я был в твоей ситуации.
Ходил. Упрашивал. Уговаривал. Вобщем это даже не It-шный вопрос.

Он - организационный.
+1
Мне однажды пришлось 4 месяца уговаривать отдел сетевых технологий переадресовать URI с одного IP на другой. Это ведь не повод выдать мне и всем желающим права на управление записями в DNS? Ситуация аналогичная.
Если кто-то вас тормозит в работе, то такие вопросы решаются через тим лидера или в крайнем случае через директора.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825281
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonsoftwarer, чел чего ты так ощетинился? Знаешь сколько раз я был в твоей ситуации.
Знаю. И не хочу заниматься подобной фигнёй. Однажды, уже давно, я дозрел до того, чтобы задать владельцу конторы вопрос: а не кажется ли ему идиотизмом, что я уговариваю его для него же заработать денег? Вот это - одна из составляющих.

maytonВобщем это даже не It-шный вопрос. Он - организационный.
Второе верно. Это вопрос организации it-проекта. Для того, чтобы в нём было хорошо и эффективно работать, он должен быть правильно организован. Концепция "единоличного владения кодом модуля" гробит проект.
...
Рейтинг: 0 / 0
Использование приоритетности операторов или скобки
    #38825301
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JeStoneМне однажды пришлось 4 месяца уговаривать отдел сетевых технологий переадресовать URI с одного IP на другой. Это ведь не повод выдать мне и всем желающим права на управление записями в DNS?
Нет, это повод разогнать нафиг толпу бездельников и организовать работу так, чтобы мелкий рабочий вопрос решался в адекватные сроки. В частности, дать "права на управление записями в DNS" достаточному числу админов, чтобы болезнь или загруженность Васи не тормозили всю работу по этому направлению. А в идеале ещё выкатить начальнику отдела сетевых технологий штраф в размере зарплаты программиста за соответствующий период времени. По опыту, "переадресовать URI" тут же начнёт делаться максимум за полчаса.
...
Рейтинг: 0 / 0
107 сообщений из 107, показаны все 5 страниц
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Использование приоритетности операторов или скобки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]