1. Си / Говнокод #25585

    0

    1. 1
    2. 2
    (cell)data += sizeof(cell) - 1;
        (cell)data &= ~(sizeof(cell) - 1);

    Блядь, ёбаный tcc! Другие конпилеры отказываются такое конпилить. Теперь дохуя переписывать.

    Запостил: Hu3KoypoBHeBblunemyx, 03 Мая 2019

    Комментарии (168) RSS

    • Кококококой хардкор!
      Ответить
    • переведи на жаваскрипт
      Ответить
    • lvalue можно скастить так:
      *(cell*)&data += sizeof(cell) - 1;
      *(cell*)&data &= ~(sizeof(cell) - 1);
      Но это говно какое-то. В таком случае пельменная же зашкварится, и конпилятор не поместит её в регистр?
      Почему только tcc умеет lvalue какастить?
      Ответить
      • Гуглёжка показывает, что старые версии gcc (до 3.4) и какие-то версии MSVC умели кастить lvalue, а потом эту возможность отменили. Каст lvalue был в кокококом-то древнем черновике «ANSI C», потом кокококомитет счёл его архитектурным излишеством.
        Ответить
        • Но почему? Удобно же. Без lvalye каста получается много некрасиаой писанины:
          data = (void*)((cell)data + sizeof(cell) - 1);
          Ответить
          • Возможно, им не понравилось то, что компилятору нужно выводить обратное преобразование, которое в общем случае может не существовать или быть трудновыводимым. Напомню, что сишный каст –— это не static_cast, не reinterpret_cast, не const_cast, а более сложная конструкция, которая перебирает все эти преобразования:
            Оно по очереди пробует следующие преобразования:
            •    const_cast
            •    static_cast
            •    static_cast и затем const_cast
            •    reinterpret_cast
            •    reinterpret_cast и затем const_cast


            reinterpret_cast –— примитивщина, оно просто игнорирует тип. А вот static_cast –— самая сложная фигня. В случае чисел оно даже производит вычисления (когда нужно целого питуха приводить к плавающему или наоборот).

            Когда у тебя «много некрасивой писанины», ты фактически выполняешь за компилятор сложную работу. Они решили упростить компилятор.
            Ответить
            • Какое ещё преобразование? Каст lvalue должен быть аналогичен reinterpret_cast, всё, что нужно сделать : проверить размеры типов и работать с байтами этой переменной как с байтами другого типа. Какие преобразования имели бы там смысл? Например, какой смысл преобразовывать что-то здесь?
              int i;
              (float)i = 3.14;
              Что во что тут преобразовывать? Например tcc такое не позволяет, он позволяет кастить в lvalue только различные инты и указатели. А я считаю, что тут было бы уместно просто проверить sizeof(int) и sizeof(float) на равенство, и насрать на тип инт и позволить сохранить в нём плавающего петуха.

              Если бы такое было позволено, Кармаку не пришлось бы городить каламбуры из указателей для вычисления быстрого отвратного порня.

              > Они решили упростить компилятор.
              Ну блядь, конпиляторы ссей и крестов давно уже не простые, сколько в гцц всякого говна понапихали: expression statement, вложенные дисфункции, трамплины, typeof, автовывод типов, генерики из c11, куча атрибутов для функций и переменных, проверка всяких возможных ошипок и очепяток, допустимых в языке, но с выдачей ворнингов, ебанические оптимизации. А про кресты я вообще молчу. Не говори мне, что люди сделавшие всё это, хотят упростить компилятор.
              Ответить
              • > (float)i
                f = (float)i; // rvalue кастует как число
                (float)i = f; // а lvalue - как биты

                Хуйня какая-то неконсистентная получается. Поэтому нинужно.
                Ответить
                • Нормально, сам сишный каст хуйня неконсистентная. Причём то что я описал гораздо "консистентнее" чем rvalue каст. В случае каста слева здесь нет вообще смысла что-то преобразовывать, просто работаешь с переменной как будто она другого типа.
                  Ответить
                  • Именно поэтому я против сишного каста и против static_cast. То ли дело reinterpret_cast (когда знаешь, что делаешь, и уверенно копируешь байты) и функции преобразования a la floor/ceil (когда явно указываешь, как именно преобразовать).
                    Ответить
              • void *hui;
                (int*)hui

                Это какой качт?
                Ответить
                • У тебя выражение не законченое.
                  Ответить
                  • ;
                    Ответить
                    • Ты не знаешь, что такое lvalue и rvalue? Мне тебя учить ещё надо?
                      Ответить
                      • это каждый питух знает

                        в няшной лвалуе это то что слева от выражения
                        то у чево есть имя
                        рвалуе -- то что справа и имя иметь не обязано

                        1 это рвалуе
                        i + 32 эт рвалуе
                        i это лвалуе


                        вот в крестах та все сложнее
                        Ответить
                        • >> это каждый питух знает

                          Подтверждаю.

                          >> вот в крестах та все сложнее

                          Ага:
                          https://en.cppreference.com/w/cpp/language/value%20category

                          Напридумывали glvalue, prvalue, xvalue. Как теперь во всём этом разобраться?
                          Ответить
                          • придется много читать и изучать документацию

                            вот в пхп ничего не надо изучать и именно потому
                            Ответить
                            • Надо. Пэхапэшные функции именуются некокококонсистентно и имеют некокококонсистентный порядок аргументов:
                              http://phpsadness.com/
                              Ответить
                        • > то что слева от выражения
                          то у чево есть имя

                          Не обязательно. lvalue —– это аргумент операторов инкремента или левый агрумент операторов присваивания, это то, чему можно присвоить значение. Например ((char*)0x265)[i] может быть lvalue, но при этом не имеет имени.

                          > вот в крестах та все сложнее
                          Вот на кресты та мне похуй.
                          Ответить
                          • про значение согласен, но формально можно чуток побуквоебсвовать

                            твой пример модно упростить до
                            i[N], так?

                            в таком случае имя тут i, просто к нему добав ли еще и смещение


                            давай перефразируем так
                            лвалуе всегда вычисляется в некий адрес памяти или регистра или там еще чего


                            и в этот адрес можно что-то записать
                            Ответить
                            • > имя тут i, просто к нему добав ли еще и смещение
                              Можно и без имени:
                              *(char*)0x265 = 'h';
                              ((char*)0x265)[1] = 'u';
                              *((char*)0x265 + 2) = 'i';


                              > лвалуе всегда вычисляется в некий адрес памяти или регистра
                              Да, именно тка.
                              Ответить
                            • По-моему, ключевой момент –— это «записать».

                              rvalue –— откуда, lvalue –— куда.

                              rvalue может быть частью длинной формулы. Где оно хранится, нас не интересует.

                              А вот lvalue –— кокококонечное место назначения.

                              Я ничего не напутал?
                              Ответить
                              • имеенно ткак
                                Ответить
                              • сам же скинул ссылку на value category, там есть "ещё посмотрите как в сижке"

                                так вот в си выражение "abcdef" тоже lvalue

                                потому что не всё lvalue, что модифицируемое, но всё модифицируемое - lvalue
                                Ответить
                      • Ты заебал.
                        void *hui;
                        int *real_hui = (int*)hui;

                        Какой здесь каст?
                        Ответить
                        • реинтерптететере
                          Ответить
                        • Это ты заебла тупыми вопросами. Обычный здесь каст, rvalue.
                          Ответить
                          • Это не про lvalue/rvalue был вопрос, питух. Гость уже ответил.
                            Ответить
                            • низкопитухорвнеый не знает про кресты
                              ему разница между реинтерпретете и статик фиолетовая
                              Ответить
                            • > не про lvalue/rvalue был вопрос
                              Ну, блядь, а я именно о кастах lvalue тут пижжу, тогда твоя хуйня вообще тут не к месту, в касте lvalue static_cast не имеет смысла.

                              В сях все касты reinterpret, за исключением кастов между плавучими и фиксированными петухами.
                              Ответить
                              • а расширение/сужение как?
                                Ответить
                                • У проктолога спросишь.
                                  Расширение и сужение как раз только у плавучих и фиксированных петухов.
                                  Ответить
                                  • я про питухов без точки вообще

                                    long int hui = 234234234;
                                    unsigned char zopha = (unsigned char) hui;

                                    тут кококококококой ксат?
                                    Ответить
                                    • Это каст между фиксированными петушками, потому хуятик.
                                      Ответить
                                      • ситоп
                                        што ты называеш фиксиированным? без иёё 754?

                                        я солгасен что это статик, потому что копулячтор не просто реинтерпиртитириует битики а совершует даже какунито умственную работу
                                        Ответить
    • показать все, что скрытоМне кажется, что Низкоуровневый петух - это Роман Кашицын...
      Ответить
      • Неа. Кашицын крестойоб и всякую функциональщинуйоб.
        И его уже 4 месяца не видно :'(. И судя по тому, что он пропал одновременно с KitKat'ом я догадываюсь кто это был.
        Ответить
    • весь рунет забит чем-то там про дочку аслу

      я помню аслу во времена веб10 когда отовсюду звучала гоинг соло и аслу называли коровелой безнокалонки потому что ейный ппа был бензинолигархом

      с тех пор прошло 19 лет
      зубы выпали
      муди поседели
      весь мир засрал сраный жобаскрипт
      и вот снова все пиздят про алсу

      верните уже тогда и мой 99й чтоли
      шестую студию там
      или дельфи
      Ответить
      • Я тоже хочу в 99-й. Хочу какать в подгузники, плакать по ночам и сосать сисю.
        Ответить
      • ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
        ▓▓▓▓▓┌──────────────────────────────────────────────────────────────────╖▓▓▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ Москва 1997 г.▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪░░▓▓▓╪╪╪╪╪╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓╪╪╪░░░░░╪╪╪░░▓╪╪╪╪╪╪╪╪╪╪╪░░▓▓╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░░░░░╪╪╪░░▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓▓░░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪░▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░▓▓╪╪╪╪╪╪╪░▓▓▓▓▓▓▓╪╪╪╪╪╪░░▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓╪╪╪░░░░░╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░░▓╪╪╪╪╪╪╪╪╪░▓▓▓▓▓╪╪╪░░░░░▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░░▓╪╪╪░░░░╪╪╪░▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪╪╪╪╪╪╪╪╪░░▓▓╪╪╪░░▓╪╪╪░░▓▓╪╪╪░░╪╪╪╪╪╪╪╪╪░▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓░░░▓▓▓▓▓░░░▓╪╪╪╪╪╪╪╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓╪╪╪░░▓▓░╪╪╪░░░░▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓▓╪╪╪░░▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░▓▓╪╪╪░░▓▓▓▓▓╪╪╪░░╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░▓▓▓▓▓▓▓░░░╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓(c) Мостовой Дмитрий Юрьевич ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
        ▓▓▓▓▓╘══════════════════════════════════════════════════════════════════╝░░▓▓▓▓
        ▓▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓
        ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
        Ответить
        • надо бы у мышки шарик почистить
          Ответить
          • ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
            ▓▓▓▓▓┌──────────────────────────────────────────────────────────────────╖▓▓▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ Москва 1997 г.▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪░░▓▓▓╪╪╪╪╪╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓╪╪╪░░░░░╪╪╪░░▓╪╪╪╪╪╪╪╪╪╪╪░░▓▓╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░░░░░╪╪╪░░▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓▓░░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪░▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░▓▓╪╪╪╪╪╪╪░▓▓▓▓▓▓▓╪╪╪╪╪╪░░▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓╪╪╪░░░░░╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░░▓╪╪╪╪╪╪╪╪╪░▓▓▓▓▓╪╪╪░░░░░▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░░▓╪╪╪░░░░╪╪╪░▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪╪╪╪╪╪╪╪╪░░▓▓╪╪╪░░▓╪╪╪░░▓▓╪╪╪░░╪╪╪╪╪╪╪╪╪░▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓░░░▓▓▓▓▓░░░▓╪╪╪╪╪╪╪╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓╪╪╪░░▓▓░╪╪╪░░░░▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓▓╪╪╪░░▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░▓▓╪╪╪░░▓▓▓▓▓╪╪╪░░╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░▓▓▓▓▓▓▓░░░╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓(c) Мостовой Дмитрий Юрьевич ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
            ▓▓▓▓▓╘══════════════════════════════════════════════════════════════════╝░░▓▓▓▓
            ▓▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓
            ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓


            Ко-кок
            Ответить
            • ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
              ▓▓▓▓▓┌──────────────────────────────────────────────────────────────────╖▓▓▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ Москва 1997 г.▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪░░▓▓▓╪╪╪╪╪╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓╪╪╪░░░░░╪╪╪░░▓╪╪╪╪╪╪╪╪╪╪╪░░▓▓╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░░░░░╪╪╪░░▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓▓░░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪░▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░▓▓╪╪╪╪╪╪╪░▓▓▓▓▓▓▓╪╪╪╪╪╪░░▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓╪╪╪░░░░░╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░░▓╪╪╪╪╪╪╪╪╪░▓▓▓▓▓╪╪╪░░░░░▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░░▓╪╪╪░░░░╪╪╪░▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪╪╪╪╪╪╪╪╪░░▓▓╪╪╪░░▓╪╪╪░░▓▓╪╪╪░░╪╪╪╪╪╪╪╪╪░▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓░░░▓▓▓▓▓░░░▓╪╪╪╪╪╪╪╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓╪╪╪░░▓▓░╪╪╪░░░░▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓▓╪╪╪░░▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░▓▓╪╪╪░░▓▓▓▓▓╪╪╪░░╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░▓▓▓▓▓▓▓░░░╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓(c) Мостовой Дмитрий Юрьевич ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
              ▓▓▓▓▓╘══════════════════════════════════════════════════════════════════╝░░▓▓▓▓
              ▓▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓
              ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
              Ответить
              • ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
                ▓▓▓▓▓┌──────────────────────────────────────────────────────────────────╖▓▓▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ Москва 1997 г.▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪░░▓▓▓╪╪╪╪╪╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓╪╪╪░░░░░╪╪╪░░▓╪╪╪╪╪╪╪╪╪╪╪░░▓▓╪╪╪░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░░░░░╪╪╪░░▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓▓░░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪╪╪╪░▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓╪╪╪╪╪╪╪╪╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░▓▓╪╪╪╪╪╪╪░▓▓▓▓▓▓▓╪╪╪╪╪╪░░▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓╪╪╪░░░░░╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░░▓╪╪╪╪╪╪╪╪╪░▓▓▓▓▓╪╪╪░░░░░▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓▓▓╪╪╪░░▓╪╪╪░░▓╪╪╪░░░░╪╪╪░▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪╪╪╪╪╪╪╪╪░░▓▓╪╪╪░░▓╪╪╪░░▓▓╪╪╪░░╪╪╪╪╪╪╪╪╪░▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓░░░▓▓▓▓▓░░░▓╪╪╪╪╪╪╪╪╪╪░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓╪╪╪░░▓▓░╪╪╪░░░░▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░▓▓▓╪╪╪░░▓╪╪╪░░▓▓▓╪╪╪░░▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░▓▓╪╪╪░░▓▓▓▓▓╪╪╪░░╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░▓▓▓▓▓▓▓░░░╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓(c) Мостовой Дмитрий Юрьевич ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╪╪╪░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓│▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓║░░▓▓▓▓
                ▓▓▓▓▓╘══════════════════════════════════════════════════════════════════╝░░▓▓▓▓
                ▓▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓
                ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
                Ответить
              • Я на тебя пиздец зол
                Ответить
      • VC  Version 4.99.06 alpha
                    Copyright (C) Vsevolod V. Volkov 1991-1998
        
        
        This is a TEST  version of the Commander which is preliminary in
        design.  You should not use it for normal work. Any features may
        be  changed between now and the final release. Please report any
        bugs that you find to me.
        
        The Volkov Commander is a DOS  program, but it supports a lot of
        features in Windows 95 and OS/2.
        
        --- поскипал часть текста ---
        
        Where You can find the latest versions and information:
        FTP sites:
        
        ftp.topaz.kiev.ua/pub/vc - Kiev, Ukraine
        ftp.elf.stuba.sk/pub/pc/utilfile - Bratislava, Slovakia
        ftp.uakom.sk/pub/mirrors/sac/utilfile - Banska Bystrica, Slovakia
        ftp.vse.cz/pub/msdos/SAC/pc/utilfile - Prague, Czech Republic
        ftp-beer.bke.hu/vol1/pub/sac/pc/utilfile - Budapest, Hungary
        ftp.cs.tu-berlin.de/pub/msdos/mirrors/stuba/pc/utilfile - Berlin, Germany
        ftp.pwr.wroc.pl/pub/pc/sac/utilfile - Wroclaw, Poland
        cert.unisa.it/pub/PC/SAC/utilfile - Salerno, Italy
        ftp2.itb.it/pub/PC/SAC/utilfile - Italy
        ftp.nsysu.edu.tw/PC/SAC/utilfile - Taiwan
        ftp.cdrom.com/pub/sac/utilfile - U.S.A.
        
        WWW sites:
        
        http://come.to/volkov - Official German homepage
        http://hjem.get2net.dk/fec/volkov/volkov.html - Unofficial site
        http://www.kki.net.pl/volkov - Polish page
        ----------------------------------------------------------------
        
        Vsevolod V. Volkov                                 Kiev, Ukraine
        
        Homepage: http://come.to/volkov
        Internet: [email protected]
        Fidonet:  2:463/62.16, 2:463/80.18
        Phone:    380-44-4842542                  Monday through Friday,
                                       7pm-10pm Kiev time (+2 hours GMT)
        
        
                                  14-May-1998
        Ответить
      • **********************************************************************
             AntiViral Toolkit Pro by Eugene Kaspersky для Windows 95/98/NT.
                           Версия 3.0 Build 132, Platinum Edition
                     (С) ЗАО "Лаборатория Касперского". Октябрь 1999 года 
        **********************************************************************
        КАК ЛУЧШЕ ПОЛЬЗОВАТЬСЯ ЭТИМ ДОКУМЕНТОМ
        --------------------------------------
        Чтобы просмотреть содержимое файла README.TXT на экране необходимо воспользоваться программой Windows 95/98 Блокнот (Notepad) или редактором WordPad. Для удобства чтения документа в программе Блокнот (Notepad) включите опцию «Перенос по словам» («Word Wrap»).
        
        Для того, чтобы распечатать README.TXT под управлением Notepad или WordPad выберите «Печать» в меню Файл.
        **********************************************************************
             	
        Вам предлагается очередная версия профессионального антивирусного пакета AntiViral Toolkit Pro by Eugene Kaspersky for Windows 95/98/NT версия 3.0 build 132, Platinum Edition.
        
        	Эта программа - новый шаг в борьбе с компьютерными вирусами. Она представляет из себя полностью 32-х битное приложение, оптимизированное для работы в операционных средах Windows 95/98/NT и использующее все возможности, которые они предоставляют.
        
        	Программа имеет удобный пользовательский интерфейс, характерный для среды Windows 95/98, большое количество настроек, выбираемых пользователем, а также одну из самых больших в мире антивирусных баз.
        
        В ходе работы AVP сканирует:
        	- Оперативную память.
        	- Файлы, включая архивные и упакованные.
        	- Системные сектора, содержащие Master Boot Record, загрузочный сектор (Boot-сектор) и таблицу разбиения диска (Partition Table).
        Ответить
        • Распространение новых антивирусных баз
          --------------------------------------
          
          Новые антивирусные базы появляются примерно один раз в неделю. В них
          включается информация обо всех вирусах, появившихся за это время, и
          расширенный лечащий модуль для этих вирусов.  Данные базы распространяются
          бесплатно и доступны на станциях BBS, ftp и через Internet:
          
          E-mail conferences 
          ==================
          relcom.comp.virus Russia
          alt.comp.virus comp.virus/virus-l compuserve
          
          FidoNet
          =======
          AVP.SUPPORT Russia
          VIRUS.POL Poland (+ dedicated fileecho AVP.POL)
          
          FTP Servers 
          ===========
          ftp://ftp.ontinet.com
          ftp://ftp.polbox.com.pl/library/!avp/
          ftp://volftp.tin.it/pub2/avp
          ftp://ftp.avp.tm
          ftp://ftp.antivirus.com.au
          
          WWW-Sites
          =========
          http://www.avp.ru  
          http://www.avp.com
          http://www.avp.ch/ (Switzerland)
          http://www.usa.avp.ch/ (U.S. backup site)
          http://www.avp.it
          http://www.scandsecure.se
          http://www.ontinet.com/
          http://www.polbox.com.pl/vacimex/     
          http://www.et.put.poznan.pl/~michal
          http://www.avpro.de
          http://www.fuhs.de
          http://www.avp-france.com     
          http://www.datarescue.com
          http://www.avp.tm
          http://www.antivirus.com.au
          
          BBSs   
          ====
          France:  +33 (1) 60 17 60 37;
          Germany: +49 611 1860569 AVP Suport Box (28.8k V.34, 8,N,1)
                   +49 36424-56512 (v.32bis/terbo/V.FC/V.34 )
                   +49 36424-56513 (v.32bis/terbo/V.FC/V.34 
          Poland:  +48-(0)22 6656363 (25+ lines VFC/V.34)
          Russia:  +7 (095) 948-6333; +7 (095) 948-3601;
          Ответить
          • Поддержка пользователей
                                 -----------------------
            
            ЗАО "Лаборатория Касперского" предлагает легальным пользователям большой комплекс услуг по поддержке своего продукта, поможет ответить на любые Ваши вопросы и использовать AVP с большой эффективностью.
            В России техническая поддержка оказывается:
            
            - в ЗАО "Лаборатория Касперского"
            
            Адрес            : 123363, Москва, ул. Героев Панфиловцев, дом № 10.
            Телефон          : (095) 495-0300, 948-4331.
            Факс             : (095) 948-4331.
            Электронный адрес: [email protected]
            BBS              : (095) 948-6333, (095) 948-3601 (24 часа).
            FidoNet          : 2:5020/156.
            Internet         : http://www.avp.ru.
            
            Техническая поддержка также оказывается и дистрибьюторами ЗАО "Лаборатория Касперского", полный список которых находится ниже.
            
            Более подробную информацию см. в системе помощи по работе AVP (Help-файле).
            Ответить
            • У меня модем в апгрейдальне сейчас
              Как заберу так скачаю с их ббски обновление
              Ответить
          • ftp://ftp.antivirus.com.au/ не открывается
            и по номеру (095) 948-3601 никто не отвечает
            Ответить
      • Для того, чтобы использопать этот класс, следует скопировать модуль DDCaiivas.pas ц катГлог Lib, который находится ц
        каталоге Delphi 2.0, или и другой каталог, обозначенный ц пути поиска библиотеки.
        
        Помните ли вы злополучное взаимное исключение Win 1 б, которое приостанаилипает многозадачную работу? Хорошо, я
        еще раз подчеркну необходимость освобождения DC. Класс TDDCanvas имеет и использует в своих целях метод Release.
        Всегда заворачивайте любой доступ к полотну в блок try..finally, например:
        
        try
        
        DDCanvas.TextOut( 0, 0, 'Hello Flipping World!' ) ;
        ( и т.д. )
        finally
        
        DDCanvas. Release ;
        end ;
        
        Или, как я часто делаю, используйте конструкцию with для того, чтобы сэкономить время набора:
        
        with DDCanvas do try
        
        TextOuK 0, 0, 'Hello Withering World!' ) ;
        ( и т.д. }
        finally
        
        Release ;
        end ;
        
        Итак, теперь вы можете добавить пару таких полотен в объявления формы, создавая их в FormShow, например:
        
        { создать два TDDCanvas для наших двух поверхностей }
        PrimaryCanvas : = TDDCanvas . Create ( PrimarySurface ) ;
        BackCanvas : = TDDCanvas , Create ( BackBuffer ) ;
        
        Освободите их в FormDestroy перед тем, как освободить поверхности:
        
        { освободить объекты TDDCanvas перед освобождением поверхностей }
        PrimaryCanvas. Free ;
        BackCanvas. Free ;
        
        Теперь можно осуществлять вывод либо на основную поверхность, либо на фоновый буфер, просто применяя эти пол-
        отна. Таким образом, вы изменяете DrawSurfacesдля их использования, значительно упрощая код, что продемонстрировано
        в листинге 32.16.
        Ответить
    • не насилуйте мне глаза "конпилером" и "конпилить",пожалуйста.
      Ответить
      • Сконпилен конпелятор да не по кроссконпеляторски.
        Надо конпелятор переконпелять да выкроссконпелять.
        Ответить
        • Конпелятор конпелировал-конпелировал, да не выконпелировал. А вот не надо было писать шаблонные портянки из новейшего стандарта!
          Ответить
          • О, боже! Что вы с ним сделали?
            Ответить
          • Конпелятор - не хелло ворлд. Упадёт - хуй отладишь.
            Ответить
          • Человек человеку волк, а кроссконпелятор кроссконпелятору кроссконпелятор.
            Ответить
            • Баба из проекта, конпилятору легче.
              Ответить
            • Кстати, у меня есть подозрение, что гуглтранс как промежушный юзает англиканский, "Человек человеку волк" он на латынь переводит как "homini lupus est", а "Человек для человека волк" уже правильно, ещё он теряет различие между "ты" и "вы" в языках в которых оно есть.

              Где-то читал, что старые переводчики юзали логлан или что-то типа того.
              Ответить
              • Так и есть. Он путает падежи; иногда заменяет термины теми, которые в английском являются омонимами.

                Гуглтранслейт переводит «Rote Platz» с немецкого на русский как «красный квадрат», потому что переводит через английский (в английском «square» означает и площадь, и квадрат).
                Ответить
          • Буст с возу - конпилеру легче.
            Ответить
          • Буста бояться - кресты не конпелять.
            Ответить
            • Почему пакет с бустом в дебианах зависит от Питона? Из-за этого не получается установить amd64 и i386 пакеты одновременно.
              Ответить
              • ПРЫЩЕПРОБЛЕМЫ.
                Ответить
                • То ли дело «Visual Studio»:
                  ● From Visual Studio's File menu, select New > Project…
                  
                  ● In the left-hand pane of the resulting New Project dialog,
                  select Visual C++ > Win32.
                  
                  ● In the right-hand pane, select Win32 Console Application
                  (VS8.0) or Win32 Console Project (VS7.1).
                  
                  ● In the name field, enter “example”
                  
                  ● Right-click example in the Solution Explorer pane and select
                  Properties from the resulting pop-up menu
                  
                  ● In Configuration Properties > C/C++ > General > Additional
                  Include Directories, enter the path to the Boost root directory, for example
                  
                  ● C:\Program Files\boost\boost_1_55_0
                  
                  ● In Configuration Properties > C/C++ > Precompiled Headers,
                  change Use Precompiled Header (/Yu) to Not Using Precompiled Headers.2
                  
                  ● Replace the contents of the example.cpp generated by the IDE with the example code above.
                  
                  ● From the Build menu, select Build Solution.

                  А потом на Гитхабе встречаешь проекты, которые без Буста в директории «C:\Program Files\boost\boost_1_55_0» не собираются.
                  Ответить
                  • Это хуйня

                    Я видала проекты которые без буста в

                    c:\мои документы\Новая папка 1\

                    не собираютися
                    Ответить
                    • Как Сёма проекты на XP собирает?
                      Ответить
                      • Сёма не собирает проекты. Он ходит на ГК, чтобы сообщить, что прыщебляди соснули, потому что у него проекты не собираются.
                        Ответить
                      • Сема не пмшет на языках, где надо "собирать" "проекты".
                        Ответить
                    • Use “mklink”, Luke!

                      mklink /D "c:\мои документы\Новая папка 1\" C:\Прыщеговно
                      mklink /D "C:\Program Files\boost\boost_1_55_0" C:\Прыщеговно
                      Ответить
                      • Я юзаю «vcpkg» и теку.

                        Тулза не без косяков, да и библиотек не очень много поддерживает, зато очень просто и не надо прописывать в настройках проекта все эти ебанутые директории с хедерами, директории с либами, сами либы… И упаси Гейтс при прописывании перепутать «pituh_lib-vc140-mtd.lib» с «pituh_lib-vc140-mdd.lib»!
                        Ответить
                        • Я чего-то не понял. Где «install.exe» для этого вашего «vcpkg»? В инструкции по установке всё сложно:
                          > git clone https://github.com/Microsoft/vcpkg.git
                          > cd vcpkg
                          
                          PS> .\bootstrap-vcpkg.bat

                          Это прыщеговно?
                          Ответить
                          • Это могучая ракушка.

                            Сначала надо установить мерзавца (а может быть мерзавец входит в могучую ракушку, я не знаю)

                            Затем клонировать это с помощью мерзавца, сменить руководство с помощью встроенной команды могучей ракушки и запустить ряд
                            Ответить
                            • А Ктулху не придёт после этих заклинаний?
                              Ответить
                          • Нет, это «Powershell» — исконное спермоговно.
                            Ответить
                      • а если уменя папка прикручена с друовово диска?
                        Ответить
                      • Лучше c:\pryschegovno
                        Ответить
                        • лучше
                          c:\prschg

                          чтобы букв было менше
                          Ответить
                          • > меньше
                            Меньше 8. Хотя тут даже в древний 6-символьный конвеншн уложились...
                            Ответить
                            • creat
                              Ответить
                              • cp, ls, mv, rm, sh,

                                В 'J', кстати, некоторые билиботечные фнукции названы нормально, а некоторые похожи на Имена хтонических чудовисчь: cderx, dbctx, fssrplc, rplc. Хт грнчн н длн мн 255.
                                Мнн птм з 'Джй'.
                                Ответить
                                • а ты хочешь сказать что лучше
                                  Copy-Item и Remote-Item, да?
                                  Ответить
                                  • Конечно писать меньше буков это удобно, особенно часто используемые команды, но от "copy", "list", "move" писанины было бы не больше, а четаемость была бы выше. Но это имена уже устоявшиеся и запомнишившиеся, поэтому похуй.

                                    Кстати, какие-то оси на роутерах понимали команды по перв букв есл не был совп.
                                    Ответить
                                    • не забывай какого размера там были терминалы:)

                                      так дел циск ios:
                                      # ena Eth0.0
                                      вместо
                                      # enable Ethernet0.0

                                      и еще в винд ест ком netsh которая тоже так делает потому что слямзина с ios

                                      и кажется также работают эти сраные ip, iw и прочие iproute2 тулы на прыщах
                                      Ответить
                                      • > и еще в винд ест ком netsh которая тоже так делает потому что слямзина с ios
                                        А ещё в винде комментарии в «bat-файлах» отделяются словом «rem», какой багор )))
                                        Ответить
                                        • > словом rem
                                          Зато парсер простой, не надо специальный кейс под комменты городить.
                                          Ответить
                                          • > не надо специальный кейс под комменты городить.
                                            В "Tcl" тоже не надо, но его, тем не менее сделали, а можно было просто:
                                            proc rem {args} {}
                                            
                                            rem Теперь это комментарий
                                            И # можно было сделать командой, всё равно она должна быть в начале строки.

                                            Кстати, можно объявить команду и переменную с именем "#", но команду напрямую использовать не получится :(, только так:
                                            proc # {x} {puts $x}
                                            set # Hello!
                                            set p #
                                            $p ${#}
                                            Ответить
                                            • лучший комутарий это dnl
                                              именно потому я за m4
                                              Ответить
                                            • Простите, я обосрался:
                                              https://ideone.com/HTw1Wx
                                              Но можно всё обернуть в фигурные скобки и будет норм, можно даже многострочный коментарий сделать:
                                              rem {
                                              	[puts Hello!]
                                              }
                                              Ответить
                    • https://www.youtube.com/watch?v=WZ7GkaQ7Po0
                      Ответить
                      • Хм. Что так мало просмотров у этого видео?
                        Ответить
                        • Стадное чувство?
                          Ответить
                          • стадное чувство было у тех зеков что коллективно выебли твою мамку, после чего она понесла тебя
                            Ответить
                      • иди нахуй
                        Ответить
                • А-ха-ха, прыщепроблемы меня лишь забавляют!
                  Ответить
              • Именно поэтому я против менеджеров пакетов. То ли дело «wget» + «tar xzf» + «ручная правка конфига» + «configure» + «make» + «make install».
                Ответить
                • причем не 1 раз а 64 раза, по одному для каждой зависимости
                  Ответить
          • Заставь дурака буст конпелять - он и диск весь засрёт.
            Ответить
          • Скоро код пишется, да не скоро спирит конпеляется.
            Ответить
          • Что сконпилил, то и слинкуешь.
            Ответить
            • Конпилер конпилером конпеляют.

              Англ. вореант: Conpile conpiler with conpiler.
              Ответить
            • Поспешишь —– конпилер насмешишь.
              Ответить
            • Конпилер оптимизациями не испортишь.
              Ответить
            • Не всё то конпилер, что экзешники генерит.
              Ответить
              • Не конпелируй ядро на котором сидишь.
                Ответить
                • Дурной мейкфайл конпелятору покоя не даёт.
                  Ответить
                • Почему? Кажется там даже был API для живого патчинга
                  А уж ядро перебрать так сам босх велел

                  Кстати, о ядрах. Слыхали про WSL-2?

                  Раньше ведь как было: MS через свои пикококококоокнтейнеры эмулировало сись колы прыщей и так работает WSL

                  А теперь в MS завезли легкую (леееегенькую такую) вротиализацию, и поверх нее запустили настояшщее ядро

                  Всамделешные прыщи в винде

                  Точно вам говорю: последние времена грядут, ой последние
                  Ответить
              • Веб питуха забыли спросить )))
                Ответить
            • >Что сконпилил, то и слинкуешь.
              строго говоря нет: можно линкеру скормить всякого говна, скрипты там
              Ответить
      • Конпеляли буст - порвали джва дедлайна.
        Ответить
        • Семь раз сконпиль, один раз выкати в прод.
          Ответить
    • показать все, что скрытоВышел на охоту за живчиками, проверьте.
      Ответить

    Добавить комментарий