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

    +104

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    switch (sum_l)
    		{
    			case 0x00: sum_l = '0'; break;
    			case 0x01: sum_l = '1'; break;
    			case 0x02: sum_l = '2'; break;
    			case 0x03: sum_l = '3'; break;
    			case 0x04: sum_l = '4'; break;
    			case 0x05: sum_l = '5'; break;
    			case 0x06: sum_l = '6'; break;
    			case 0x07: sum_l = '7'; break;
    			case 0x08: sum_l = '8'; break;
    			case 0x09: sum_l = '9'; break;
    			case 0x0A: sum_l = 'A'; break;
    			case 0x0B: sum_l = 'B'; break;
    			case 0x0C: sum_l = 'C'; break;
    			case 0x0D: sum_l = 'D'; break;
    			case 0x0E: sum_l = 'E'; break;
    			case 0x0F: sum_l = 'F'; break;
    		}
    
    		switch (sum_h)
    		{
    			case 0x00: sum_h = '0'; break;
    			case 0x01: sum_h = '1'; break;
    			case 0x02: sum_h = '2'; break;
    			case 0x03: sum_h = '3'; break;
    			case 0x04: sum_h = '4'; break;
    			case 0x05: sum_h = '5'; break;
    			case 0x06: sum_h = '6'; break;
    			case 0x07: sum_h = '7'; break;
    			case 0x08: sum_h = '8'; break;
    			case 0x09: sum_h = '9'; break;
    			case 0x0A: sum_h = 'A'; break;
    			case 0x0B: sum_h = 'B'; break;
    			case 0x0C: sum_h = 'C'; break;
    			case 0x0D: sum_h = 'D'; break;
    			case 0x0E: sum_h = 'E'; break;
    			case 0x0F: sum_h = 'F'; break;
    		}

    p.s. true story.
    пока сам не увидел, был уверен, что такого не бывает.

    Запостил: 10199, 24 Января 2011

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

    • показать все, что скрытоsum_l += 'a';
      sum_h += 'A';
      Ответить
    • ну вот чел еще не узнал, что в Си чары и целые конвертируемы )
      Ответить
    • вот что бывает, если программировать на языке, в котором нет нормального символьного типа
      Ответить
      • >> если программировать на языке, в котором нет нормального символьного типа
        то надо обязательно копипастить?
        Ответить
    • char sym[] = "0123456789ABCDEF";
      sum_l = sym[sum_l];
      sum_h = sym[sum_h];
      // Не забыть про ограничения по индексу
      Ответить
      • ты так везде вместо ассертов коментарии пишешь?
        похвально
        Ответить
        • А ты всегда по одному примеру строишь систему? Печально.
          Здесь я не пытался привести полный аналог ГК, но предвосхищая вопросы про ОДЗ указал на это.
          Ответить
      • я исправил на
        inline char convertToASCII(char b)
        {
        if (b <10) return (b+'0');
        else return (b+'A'-10);
        }
        но Ваш вариант имхо лучше.
        возьму на вооружение.
        Ответить
    • показать все, что скрытоЭто потому, что нет нормального оператора case, как в Паскале.
      Ответить
      • это потому, что в паскале нет шаблонов
        Ответить
        • показать все, что скрытоЭто потому, что в си скобки фигурные.
          Ответить
          • фигурные скобки -- признак хорошего языка
            исключение только пхп
            Ответить
            • показать все, что скрытоСогласен.

              i := 1; {инициализируем счётчик}

              Без фигурных скобочек этот код был бы менее понятен.
              Ответить
              • а еще без двоеточия
                Ответить
                • показать все, что скрытоПо обозначениям математики без двоеточия это сравнение, а не присваивание.
                  Это только в уёбищном сишном синтаксисе всё не как у людей.
                  Ответить
                  • ух какой откормленный!
                    Ответить
                  • Откуда такая ненависть к си? Не нравится - не трогай.
                    Ответить
                    • Это не ненависть, а толщина просто. Вменяемые люди так толсто не пишут. Мсье хочет растравить свору полоумных сишников, которые, в теории, должны от такого офигеть и начать выдавать тонны лулзов. К сожалению, этого не происходит. :(
                      Видать, вымерли оне.
                      Ответить
                      • нет, конечно

                        многие троллят друг друга на
                        kernel.linux.org
                        и
                        write_drivers.windows.com
                        Ответить
                        • Ну так тогда надо там и троллить, а не тут столовую искать.
                          Ответить
                    • показать все, что скрытоЭтот язык - как раковая опухоль, захватил всю индустрию, не отвечая даже минимальным требованиям к надёжности.
                      Ответить
                      • для няшной пилят вот такой костыль: http://vcc.codeplex.com/
                        Ответить
                      • И чито ты сделаешь?
                        Кстати, если за Земле будет нечего есть, кроме крыс, ты тоже будешь орать, что это противно, и сдохнешь от голода? Или будешь есть крыс?
                        Ответить
                        • показать все, что скрытоНадо не довести Землю до того, что останется только крыса С! А сравнение хорошее.
                          Ответить
                          • Дооо, это в твоих силах. Новый супергерой для комиксов.
                            Хотя смотри: в Комитете явно кто-то поддавливает (какой-то фан высокого уровня). Мы же против Стандарта не попрем. Почему бы не попробовать оттуда пропихивать свои светлые идеи? Там тебе буде и аргументация, и авторитетное мнение.
                            Свергнуть виндовую консоль я смогу только изнутри. Но я иду к этому. Муахахаха.
                            Ответить
                    • не осилил си
                      а программистам на си платят больше, чем программистам на дельфи
                      Ответить
                      • а программистам на джава платят больше, чем программистам на си, и это не значит, что джава не говно
                        Ответить
                        • во первых это не всегда так.
                          во вторых джава, безусловно, не говно. хотя и далеко не идеальна.
                          Ответить
                        • Как смешно, когда сравнивают жопы с пальцами. C++ - пхп, C++ - ява. Вы еще баш - асм сравните. Можно всю бизнес-логику еще на си писать, очень весело будет.
                          Ответить
      • переведи плз этот код на нормальный оператор case как в паскале...
        Ответить
      • case sum_l of
        	0: sum_l := '0'; 
        	1: sum_l := '1'; 
        	2: sum_l := '2';
        	3: sum_l := '3'; 
        	4: sum_l := '4'; 
        	5: sum_l := '5'; 
        	6: sum_l := '6';
        	7: sum_l := '7'; 
        	8: sum_l := '8';
        	9: sum_l := '9';
        	10: sum_l := 'A';
        	11: sum_l := 'B'; 
        	12: sum_l := 'C';
        	13: sum_l := 'D';
        	14: sum_l := 'E';
        	15: sum_l := 'F';
        end;
        case sum_h of
        	0: sum_h := '0'; 
        	1: sum_h := '1'; 
        	2: sum_h := '2';
        	3: sum_h := '3'; 
        	4: sum_h := '4'; 
        	5: sum_h := '5'; 
        	6: sum_h := '6';
        	7: sum_h := '7'; 
        	8: sum_h := '8';
        	9: sum_h := '9';
        	10: sum_h := 'A';
        	11: sum_h := 'B'; 
        	12: sum_h := 'C';
        	13: sum_h := 'D';
        	14: sum_h := 'E';
        	15: sum_h := 'F';
        end;


        Ню-ню... И в Паскале от таких условий не уйти...
        Все таки тут не в коде дело, а в мозгах.
        Ответить
        • показать все, что скрытоНамного лучше же стало!
          Ответить
          • БабааааааааX-!
            Ответить
          • не вижу принципиальных отличий :)
            Ответить
            • показать все, что скрытоДа просто у тебя мозг уже искривился под си, вот и не видишь.
              Ответить
              • Да будет тебе известно сынок, что я много языков знаю, и давно пришел к выводу, что на чем писать все равно. Главное как писать. Если все твои программы сплошь состоят из таких вот case то, мне остается просто сочувствовать...
                Ответить
                • показать все, что скрытоУ оппонента закончились аргументы и он перешёл на давление авторитетом.
                  Ответить
                  • >и он перешёл на давление авторитетом.
                    Ваш авторитет толстенного тролля задавит кого угодно.))
                    Ответить
                • показать все, что скрытоесли было бы все-равно, люди ели бы говно.

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

                  имхо специализация из да вей оф да фьючарр!
                  Ответить
                  • >>имхо специализация из да вей оф да фьючарр!
                    если человек не знает хотя бы трех-четырех языков (хотя бы поверхностно), то у него скорее всего узкий мозг и он кодомакака)

                    доказано
                    Ответить
                    • кем доказано? что доказано?

                      аргументация "от авторитета" детектед
                      Ответить
                • бывают исключения
                  например написать неговно на питоне проще, чем на пхп
                  Ответить
                  • и сразу нада отмазу слепить. лол

                    и примеры у тебя так себе. питон - язык скриптов, пхп - язык динамических веб страниц.

                    и что ты хотел сказать?
                    чтоб кодомакака может стать системным архитектором нечто большим чем кодомакака, ей надо выучить пару скриптовых языков?
                    Ответить
                  • Субъективно, не соглашусь. У меня на питоне говно в основном получается, хотя я на нем все равно люблю писать))
                    Ответить
              • Точно, брэков нет. Ты открыл мне новый мир!
                Ответить
            • >не вижу принципиальных отличий
              А я вижу. В одном случае говно на паскале, в другом - на си.
              Ответить
              • показать все, что скрыто>>А я вижу. В одном случае говно на паскале, в другом - на си.
                В одном случае говно на паскале, в другом - код на си.
                Ответить
                • показать все, что скрытоВот именно. На Паскале такое считается говном, а на Си так говнить - норма!
                  Ответить
                  • слушайте, слушайте, дело говорит. Ц сильнее склоняет к экскрементированию чем Паскаль
                    Ответить
                    • показать все, что скрытоЦ - это один большой экскремент, на самом деле.
                      Ответить
                    • И чем это плохо? Зато все можно запилить под свои цели. А можно не пилить, а юзать готовое, проверенное сотни раз.
                      Незачем "экспериментировать" в продакшене. Даже в рабочее время незачем, если это кого-то смущает.
                      Кстати, без экспериментов ничего никуда и не движется (что я и наблюдаю в паскале).
                      Ответить
                      • Да ты Паскаль знаешь на уровне ТП7.
                        Ответить
                        • Прямо как аббревиатура для "тупой пизды", право.
                          Ответить
                        • Я и не знаю его. И последние 5 слов были явно не основной мыслью высера)) Имел ввиду его непопулярность.
                          И да, я не против паскаля, я за С, так что не надо обижаться)
                          Ответить

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