1. C++ / Говнокод #22452

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    #define I "%d"
    #define II I I
    #define III II I
    #define IIII II II
    #define IIIII III II
    #define IIIIII III III
    #define IIIIIII IIII III
    #define IIIIIIII IIII IIII

    http://codeforces.com/contest/778/submission/25038973

    guestinho, 27 Февраля 2017

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

    +2

    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
    #include <iostream>
     
    using std::cout;
    using std::cin;
    using std::endl;
     
    void func1()
    {
        int var;
     
        cout << "secret function " <<  var << endl;
    }
     
    void printHelloWorld()
    {
        long *ptr = (long *)&ptr + 3;
        *ptr = (long)&func1;
        *((int *)ptr - 1) = 052;
     
        cout << "Hello, World" << endl;
    }
     
    int main()
    {
        printHelloWorld();
     
        return 0;
    }

    Результат его выполнения:
    Hello, World
    secret function 42
    Вопросы:
    1 Почему выводится secret function 42, если вызывается только printHelloWorld();
    2 Откуда взялось число 42?

    Подсказки:
    1 Не потому что 42 - это ответ на «главный вопрос Жизни, Вселенной и Всего Остального»
    2 На других архитектурах и компиляторах результат может быть другим, я компилил в linux gcc 5.4.0 x64

    Топик на киберфоруме:
    Простая и интересная задачка по C++: объяснить почему результат работы программы именно такой, какой он есть

    Pythoner, 26 Февраля 2017

    Комментарии (36)
  3. C++ / Говнокод #22433

    −2

    1. 1
    while(new char != NULL) {}

    JavaScript, 22 Февраля 2017

    Комментарии (31)
  4. C++ / Говнокод #22431

    0

    1. 1
    while(new char != false) {}

    JavaScript, 22 Февраля 2017

    Комментарии (1)
  5. C++ / Говнокод #22338

    +3

    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
    #include <iostream>
    using namespace std;
    struct GetFirst{};
    template<class T>
    const T &operator,(const T &val, const GetFirst &) {
      return val;
    }
    template<class T, class U>
    const T &ifvoid_impl(const T &val, const U &) {
      return val;
    }
    template<class T>
    const T &ifvoid_impl(const GetFirst &, const T &val) {
      return val;
    }
    #define ifvoid(X, Y) (ifvoid_impl(((X), GetFirst()), (Y)))
    
    int a() { return 1; }
    void f() {}
    
    int main() {
      cout << ifvoid(a(), "[a()]") << endl
           << ifvoid(f(), "[f()]") << endl;
    }

    Лень проверять в шаблонном коде, возвращает ли что-то пользовательская функция? Воспользуйся волшебством оператора запятая!

    Bobik, 16 Февраля 2017

    Комментарии (20)
  6. C++ / Говнокод #22332

    +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
    // CPP/Windows/Defs.h
    
    #ifndef __WINDOWS_DEFS_H
    #define __WINDOWS_DEFS_H
    
    #include "../Common/MyWindows.h"
    
    #ifdef _WIN32
    inline bool LRESULTToBool(LRESULT v)
    { return (v != FALSE); }
    
    inline bool BOOLToBool(BOOL v)
    { return (v != FALSE); }
    
    inline BOOL BoolToBOOL(bool v)
    { return (v ? TRUE: FALSE); }
    #endif
    
    inline VARIANT_BOOL BoolToVARIANT_BOOL(bool v)
    { return (v ? VARIANT_TRUE: VARIANT_FALSE); }
    
    inline bool VARIANT_BOOLToBool(VARIANT_BOOL v)
    { return (v != VARIANT_FALSE); }
    
    #endif

    Скопипастино из исходников 7zip (прости, Игорь Павлов).
    Этот код выглядит, как ебаный пиздец.

    Graviton, 15 Февраля 2017

    Комментарии (47)
  7. C++ / Говнокод #22314

    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
    template <typename T> std::list<T*> GetComponents(){
            std::list<T*> list;
            std::list<Component_ptr>::iterator iter=_components.begin();
            while(iter!=_components.end()){
                T* element=dynamic_cast<T*>(iter->get());
                if(element!=NULL){
                    list.push_back(element);
                }
                iter++;
            }
            return list;
        }
    
        template <typename T> T* GetComponent(){
            std::list<T*> list=GetComponents<T>();
            if(list.size()>0){
                return list.front();
            }
            return NULL;
        }

    Зато как круто выглядит -
    AnyComponent *component = GetComponent<AnyComponent>();
    А теперь его как в старой доброй сишке на NULL проверить?

    Pythoner, 11 Февраля 2017

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

    +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
    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
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    #include "hello.h"
    
    __static_data<System_Reflection_RuntimeModule> GModuleC__runtimemodule_hello_ehpqe23j_dll = { (Byte*) -1, (Byte*) -1, { { { (Void**) &System_Reflection_RuntimeModule_vtable_impl } },  0 , &GModuleC__runtimeassembly_hello_ehpqe23j_dll.data, {  0  }, {  0  }, {  0  }, {  0  } }};
    __static_data<System_Reflection_RuntimeAssembly> GModuleC__runtimeassembly_hello_ehpqe23j_dll = { (Byte*) -1, (Byte*) -1, { { { (Void**) &System_Reflection_RuntimeAssembly_vtable_impl } },  0 ,  0 , {  0  } }};
    Int32 GModuleC__cctor_called_hello_ehpqe23j_dll = -1;
    static __static_str<6> _s15063797403154689540_ = { (Byte*) -1, (Byte*) -1, (Void**) &System_String_vtable_impl, 5, L"pituh" };
    static __static_str<2> _s1054744840757602046_ = { (Byte*) -1, (Byte*) -1, (Void**) &System_String_vtable_impl, 0, L"\0" };
    __static_data<System_RuntimeType> pituh__runtimetype_hello_ehpqe23j_dll = { (Byte*) -1, (Byte*) -1, { { { { { (Void**) &System_RuntimeType_vtable_impl } } } },  0 , {  0  }, {  0  }, 0, (System_Type*) &System_Object__runtimetype.data,  0 , ((System_String*) ((Byte**) &_s15063797403154689540_ + 2)), ((System_String*) ((Byte**) &_s1054744840757602046_ + 2)), 18, 0, 0, 0, 0, &GModuleC__runtimemodule_hello_ehpqe23j_dll.data }};
    Int32 pituh__cctor_called_hello_ehpqe23j_dll = -1;
    Void Void_pituh__ctorFN_hello_ehpqe23j_dll(pituh* __this) {
        __check_this((Void*)__this);
        Void_System_Object__ctorFN((System_Object*) (__this));
        return ;
    }
    static __static_str<8> _s18790481933210356248_ = { (Byte*) -1, (Byte*) -1, (Void**) &System_String_vtable_impl, 7, L"Kokoko!" };
    
    Int32 Int32_pituh_MainFSystem_StringAYN_hello_ehpqe23j_dll(System_StringAY* args) {
        Void_System_Console_WriteLineFSystem_StringN(((System_String*) ((Byte**) &_s18790481933210356248_ + 2)));
        return 0;
    }
    pituh* pituh_pituh__newFN_hello_ehpqe23j_dll() {
        Int32 local0;
        Int32 _dup20;
        Int32 _dup22;
        Void* _dup42;
        Void* _dup51;
        Void* _dup56;
        Int32 _dup75;
        pituh* _dup104;
        _dup20 = ((sizeof(pituh) + sizeof(System_Object*)) + sizeof(System_Object*));
        ;
        local0 = _dup20;
    a22:
        _dup22 = _dup20;
        ;
        if ((UInt32)_dup22 >= (UInt32)102400) goto a37;
        Void* _phi30;
        Void* __expr30;
        __expr30 = GC_MALLOC_ATOMIC(_dup22);
        _phi30 = __expr30;
        goto a42;
    a37:
        Void* __expr37;
        __expr37 = GC_MALLOC_ATOMIC_IGNORE_OFF_PAGE(_dup22);
        _phi30 = __expr37;
    a42:
        _dup42 = _phi30;
        ;
        if (_dup42) goto a51;
        System_OutOfMemoryException* _new45;
        _new45 = System_OutOfMemoryException_System_OutOfMemoryException__newFN();
        Void_System_OutOfMemoryException__ctorFN(_new45);
        throw (Void*) _new45;
    a51:
        _dup51 = _dup42;
        ;
        Memset((Byte*) ((Byte*) (_dup51)), 0, (local0));
        _dup56 = _dup51;
        ;
        *((Int32*) (Int32*) (_dup56)) = -1;
        _dup75 = (Int32) (((Byte*) (_dup56) + sizeof(pituh*)));
        ;
        *((Int32*) (Int32*) (_dup75)) = -1;
        _dup104 = (pituh*) ((Void*) ((_dup75 + sizeof(pituh*))));
        ;
        Void_pituh__initFN_hello_ehpqe23j_dll(_dup104);
        return _dup104;
    }
    Void Void_pituh__initFN_hello_ehpqe23j_dll(pituh* __this) {
        __check_this((Void*)__this);
        ((System_Object*) (__this))->__vtbl = (Void**) &pituh_vtable_implhello_ehpqe23j_dll;
        return ;
    }
    Int32 Int32_pituh__getsizeFN_hello_ehpqe23j_dll(pituh* __this) {
        __check_this((Void*)__this);
        return (Int32) (sizeof(pituh));
    }
    System_Type* System_Type_pituh__gettypeFN_hello_ehpqe23j_dll(pituh* __this) {
        __check_this((Void*)__this);
        return (System_Type*) ((System_Type*) &pituh__runtimetype_hello_ehpqe23j_dll.data);
    }
    Void* VoidP_pituh__dynifaceFSystem_TypeN_hello_ehpqe23j_dll(pituh* __this, System_Type* _type) {
        __check_this((Void*)__this);
        return 0/*null*/;
    }
    Int32 Int32_pituh_get_static__cctor_calledFN_hello_ehpqe23j_dll() {
        return pituh__cctor_called_hello_ehpqe23j_dll;
    }
    Int32* Int32P_pituh_get_static_addr__cctor_calledFN_hello_ehpqe23j_dll() {
        return &pituh__cctor_called_hello_ehpqe23j_dll;
    }
    Void Void_pituh_set_static__cctor_calledFInt32N_hello_ehpqe23j_dll(Int32 _value) {
        pituh__cctor_called_hello_ehpqe23j_dll = _value;
        return ;
    }
    // Дальше копипастить нет смысла

    В эту простыню превращается простенькая программа на C# после прогона через IL2C:

    using System;

    class pituh {
    public static int Main (string [] args)
    {
    Console.WriteLine ("Kokoko!");
    return 0;
    }
    }


    IL2C брать отсюда: https://csnative.codeplex.com/

    inkanus-gray, 11 Февраля 2017

    Комментарии (49)
  9. C++ / Говнокод #22307

    −2

    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
    // MegaProject.h
    #ifndef _MegaProject_
    #define _MegaProject_
    
    class MegaProject {
        // Here will be some features
    public:
        // It needs an implementation
    };
    
    #endif
    
    // MegaProject.cpp
    #include "MegaProject.h"
    
    // Please wait until it will be implemented itself

    Graviton, 10 Февраля 2017

    Комментарии (7)
  10. C++ / Говнокод #22292

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    try {
                    shadow_page.insert_record(index, record);
                } catch ( ... ) {
                    throw;
                }

    Koshak90, 07 Февраля 2017

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