1. Куча / Говнокод #29104

    0

    1. 1
    IT Оффтоп #213

    #183: https://govnokod.ru/28777 https://govnokod.xyz/_28777
    #184: https://govnokod.ru/28790 https://govnokod.xyz/_28790
    #185: https://govnokod.ru/28794 https://govnokod.xyz/_28794
    #186: https://govnokod.ru/28815 https://govnokod.xyz/_28815
    #187: https://govnokod.ru/28833 https://govnokod.xyz/_28833
    #188: https://govnokod.ru/28837 https://govnokod.xyz/_28837
    #189: https://govnokod.ru/28840 https://govnokod.xyz/_28840
    #190: https://govnokod.ru/28875 https://govnokod.xyz/_28875
    #191: https://govnokod.ru/28878 https://govnokod.xyz/_28878
    #192: https://govnokod.ru/28886 https://govnokod.xyz/_28886
    #193: https://govnokod.ru/28911 https://govnokod.xyz/_28911
    #194: https://govnokod.ru/28914 https://govnokod.xyz/_28914
    #195: https://govnokod.ru/28917 https://govnokod.xyz/_28917
    #196: https://govnokod.ru/28925 https://govnokod.xyz/_28925
    #197: https://govnokod.ru/28935 https://govnokod.xyz/_28935
    #198: https://govnokod.ru/28938 https://govnokod.xyz/_28938
    #199: https://govnokod.ru/28942 https://govnokod.xyz/_28942
    #200: https://govnokod.ru/28945 https://govnokod.xyz/_28945
    #201: https://govnokod.ru/28948 https://govnokod.xyz/_28948
    #202: https://govnokod.ru/28951 https://govnokod.xyz/_28951
    #203: https://govnokod.ru/28954 https://govnokod.xyz/_28954
    #204: https://govnokod.ru/28971 https://govnokod.xyz/_28971
    #205: https://govnokod.ru/28986 https://govnokod.xyz/_28986
    #206: https://govnokod.ru/28991 https://govnokod.xyz/_28991
    #207: https://govnokod.ru/29002 https://govnokod.xyz/_29002
    #208: https://govnokod.ru/29060 https://govnokod.xyz/_29060
    #209: https://govnokod.ru/29070 https://govnokod.xyz/_29070
    #210: https://govnokod.ru/29079 https://govnokod.xyz/_29079
    #211: https://govnokod.ru/29092 https://govnokod.xyz/_29092
    #212: https://govnokod.ru/29093 https://govnokod.xyz/_29093

    nepeKamHblu_nemyx, 15 Марта 2025

    Комментарии (457)
  2. 1C / Говнокод #29103

    −1

    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
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    #Область Работа_с_JSON
    //Функция ВыгрузитьНоменклатуруJSON()
    //Назначение: выгрузка номенклатуры в шину
    //Входящие параметры:
    // - ВходящиеДанные - таблица значений, заполненной информацией о номенклатуре
    // - ПараметрыПодключения - структура с описанием подключения к web-сервису
    //Возвращаемое значение:
    // Строка в формате JSON с описанием результата
    Функция ВыгрузитьНоменклатуруJSON(ВходящиеДанные, ПараметрыПодключения) Экспорт
    	//Формируем строку в формате JSON на основе входящих данных
    	Текст = Новый ТекстовыйДокумент();
    	Текст.ДобавитьСтроку("[");
    	Массив = Новый Массив;
    	Для к = 0 По ВходящиеДанные.Количество() - 1 Цикл
    		НоваяСтрока = Новый Структура("UID, Name, VC, Brand, Add, Barcode", 
    			ВходящиеДанные[к].UID, 
    			ВходящиеДанные[к].Name, 
    			ВходящиеДанные[к].VC,
    			ВходящиеДанные[к].Brand,
    			Новый Структура("Color, Size",
    				ВходящиеДанные[к].Color,
    				ВходящиеДанные[к].Size),
    			ВходящиеДанные[к].Barcode);
    		ЗаписьJSON = Новый ЗаписьJSON;
    		ЗаписьJSON.УстановитьСтроку();
    		ЗаписатьJSON(ЗаписьJSON, НоваяСтрока);
    		Строка = ЗаписьJSON.Закрыть();
    		Текст.ДобавитьСтроку(Строка);
    		Если к < ВходящиеДанные.Количество() - 1 Тогда
    			Текст.ДобавитьСтроку(",");
    		КонецЕсли;
    	КонецЦикла;
    	Текст.ДобавитьСтроку("]");
    	ПакетJSON = Текст.ПолучитьТекст();
    	ФайлСертификатКлиентаФайл = ПолучитьИмяВременногоФайла("pfx");
    	МакетСертификатКлиентаФайл = ПолучитьМакет("СертификатКлиентаФайл");
    	МакетСертификатКлиентаФайл.Записать(ФайлСертификатКлиентаФайл);
    	ЗащищенноеСоединениеOpenSSL = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаФайл(ФайлСертификатКлиентаФайл));
    	//Производим подключение к web-сервису.
    	//1) Создаем WSОпределение
    	Определение    		= Новый WSОпределения(ПараметрыПодключения.МестоположениеWSDLфайла, ПараметрыПодключения.Пользователь,  ПараметрыПодключения.Пароль,,,ЗащищенноеСоединениеOpenSSL);
    	//2) Создаем WSПрокси
    	Прокси      		= Новый WSПрокси(Определение, "http://SantOn", "SantOnApi", "SantOnApiSoap",,,ЗащищенноеСоединениеOpenSSL);
    	Прокси.Пользователь	= ПараметрыПодключения.Пользователь;
    	Прокси.Пароль		= ПараметрыПодключения.Пароль;
    	//Отправляем строку на обработку в функцию "FullLoadJs" web-сервиса
    	Попытка
    		РезультатОперации = Прокси.FullLoadJs(ПакетJSON);
    	Исключение
    		Сообщить(ОписаниеОшибки());
    		РезультатОперации = "";
    	КонецПопытки;
    	//Выход из функции и передача результата вызывающему методу
    	Возврат Новый Структура("РезультатОперации, ИсходныеДанные", РезультатОперации, ПакетJSON);
    КонецФункции

    Обработка сантехника онлайн

    evreybiysk, 12 Марта 2025

    Комментарии (4)
  3. Куча / Говнокод #29102

    0

    1. 1
    Пиздец-оффтоп #108

    #78: https://govnokod.ru/28730 https://govnokod.xyz/_28730
    #79: https://govnokod.ru/28736 https://govnokod.xyz/_28736
    #80: https://govnokod.ru/28740 https://govnokod.xyz/_28740
    #81: https://govnokod.ru/28750 https://govnokod.xyz/_28750
    #82: https://govnokod.ru/28779 https://govnokod.xyz/_28779
    #83: https://govnokod.ru/28788 https://govnokod.xyz/_28788
    #84: https://govnokod.ru/28795 https://govnokod.xyz/_28795
    #85: https://govnokod.ru/28808 https://govnokod.xyz/_28808
    #86: (vanished) https://govnokod.xyz/_28814
    #87: https://govnokod.ru/28817 https://govnokod.xyz/_28817
    #88: https://govnokod.ru/28836 https://govnokod.xyz/_28836
    #89: https://govnokod.ru/28843 https://govnokod.xyz/_28843
    #90: https://govnokod.ru/28874 https://govnokod.xyz/_28874
    #91: https://govnokod.ru/28880 https://govnokod.xyz/_28880
    #92: https://govnokod.ru/28884 https://govnokod.xyz/_28884
    #93: https://govnokod.ru/28889 https://govnokod.xyz/_28889
    #94: https://govnokod.ru/28895 https://govnokod.xyz/_28895
    #95: https://govnokod.ru/28904 https://govnokod.xyz/_28904
    #96: https://govnokod.ru/28912 https://govnokod.xyz/_28912
    #97: https://govnokod.ru/28918 https://govnokod.xyz/_28918
    #98: https://govnokod.ru/28932 https://govnokod.xyz/_28932
    #99: https://govnokod.ru/28936 https://govnokod.xyz/_28936
    #100: https://govnokod.ru/28940 https://govnokod.xyz/_28940
    #101: https://govnokod.ru/28949 https://govnokod.xyz/_28949
    #102: https://govnokod.ru/28978 https://govnokod.xyz/_28978
    #103: https://govnokod.ru/28982 https://govnokod.xyz/_28982
    #104: https://govnokod.ru/28989 https://govnokod.xyz/_28989
    #105: https://govnokod.ru/29052 https://govnokod.xyz/_29052
    #106: https://govnokod.ru/29069 https://govnokod.xyz/_29069
    #107: https://govnokod.ru/29086 https://govnokod.xyz/_29086

    nepeKamHblu_nemyx, 11 Марта 2025

    Комментарии (161)
  4. Си / Говнокод #29101

    0

    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
    typedef struct ll_node
    {
      struct ll_node *prev;
      struct ll_node *next;
      int val;
    } ll_node;
    
    ll_node a;
    ll_node b;
    ll_node c = {&a, &b,3};
    
    // не работает
    a.next = &b;
    a.prev = &c;
    
    b.next = &c;
    b.prev = &a;
    
    /*
    c.next = &a;
    c.prev = &b;
    */
    
    // зато так работает:
    ll_node arr[3] = {
      {&arr[2], &arr[1],1},
      {&arr[0], &arr[2],2},
      {&arr[1], &arr[0],3}
    };

    Кольцевой двусвязный список.

    j123123, 10 Марта 2025

    Комментарии (51)
  5. Си / Говнокод #29100

    +1

    1. 1
    Почему при таком обилии языков программирования ассемблер не уходит в туман?

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

    Напоминает попытки быдла бросить курить.

    KPblCA, 08 Марта 2025

    Комментарии (2)
  6. Куча / Говнокод #29099

    +1

    1. 1
    2. 2
    ...Когда между газовой трубой и стеной можно засунуть банан - разве можно удивляться, что в квартира посещаема зверушками?
    Какие коммуникации - такой и софт. Как жаль, что крысу нельзя перевести в байткод...

    Я бы вам, блять, таких нюансов понаустроила, вы б бедные были.

    KPblCA, 08 Марта 2025

    Комментарии (0)
  7. Си / Говнокод #29098

    0

    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
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    // https://godbolt.org/z/f4s13WEWM
    
    #include <inttypes.h>
    
    int test(uint32_t a, uint32_t b)
    {
      if (a > b)
        return a+b;
      return a*b;
    }
    
    int test2(uint32_t a, uint32_t b)
    {
      return (a+b)*(a > b) | (a*b)*!(a > b);
    }
    
    int test3(uint32_t a, uint32_t b)
    {
      return
        ((a+b) & (uint32_t)(!(a > b) - 1)) |
        ((a*b) & (uint32_t)((a > b) - 1));
    }
    
    int test4(uint32_t a, uint32_t b)
    {
      const uint32_t arr[2] = {a+b, a*b};
      return arr[!(a > b)];
    }
    
    /* ASM output
    test:
            bltu    a1, a0, .LBB0_2
            mul     a0, a1, a0
            ret
    .LBB0_2:
            add     a0, a0, a1
            ret
    
    test2:
            bltu    a1, a0, .LBB1_2
            mul     a0, a1, a0
            ret
    .LBB1_2:
            add     a0, a0, a1
            ret
    
    test3:
            bltu    a1, a0, .LBB2_2
            mul     a0, a1, a0
            ret
    .LBB2_2:
            add     a0, a0, a1
            ret
    
    test4:
            addi    sp, sp, -16
            add     a2, a1, a0
            mul     a3, a1, a0
            sltu    a0, a1, a0
            sw      a2, 8(sp)
            sw      a3, 12(sp)
            xori    a0, a0, 1
            slli    a0, a0, 2
            addi    a1, sp, 8
            add     a0, a0, a1
            lw      a0, 0(a0)
            addi    sp, sp, 16
            ret
    */

    Наглядная демонстрация того, что компилятор может насрать на ваши попытки заставить его сгенерить branchless машинный код. Получилось это только в "test4"

    j123123, 07 Марта 2025

    Комментарии (41)
  8. C++ / Говнокод #29097

    0

    1. 1
    Мда... Какое же всё таки говнецо это Ваше США.

    3uMuCTOH, 04 Марта 2025

    Комментарии (3)
  9. Куча / Говнокод #29096

    0

    1. 1
    ...В испании ввели уголовку за убийство крысы, проникшей в жилье.

    Вот так-то, не то что ватный тупизм. Берегите ваших крысок!

    KPblCA, 01 Марта 2025

    Комментарии (0)
  10. PHP / Говнокод #29095

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    for ($i = 0; $i < 1; $i++) {
                $images[] = [
                    "noRetina" => [
                        "thumb" => BsHelper::imageUrl($productImages[0]["image"], 50, 50),
                    ],
                    "retina" => [
                        "thumb" => BsHelper::imageUrl($productImages[0]["image"], 100, 100),
                    ],
                ];
            }

    volodyahome, 26 Февраля 2025

    Комментарии (4)