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

    −3

    1. 1
    for (i=1; i<=n-k+1; i++) { for (j=k; j<=n+1-i; j++) printf("%d", j); printf("\n"); k++; n++; } }

    Из студенческих лабораторных.
    Что делает - догадайтесь сами =)

    vt244, 01 Февраля 2019

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

    −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
    // https://habr.com/ru/company/jugru/blog/438260/
    
    template<Semiregular T>
    struct maybe_view : view_interface<maybe_view<T>> {
      maybe_view() = default;
      maybe_view(T t) : data_(std::move(t)) {
      }
      T const *begin() const noexcept {
        return data_ ? &*data_ : nullptr;
      }
      T const *end() const noexcept {
        return data_ ? &*data_ + 1 : nullptr;
      }
    private:
      optional<T> data_{};
    };
    inline constexpr auto for_each =
      []<Range R,
         Iterator I = iterator_t<R>,
         IndirectUnaryInvocable<I> Fun>(R&& r, Fun fun)
            requires Range<indirect_result_t<Fun, I>> {
          return std::forward<R>(r)
            | view::transform(std::move(fun))
            | view::join;
      };
    inline constexpr auto yield_if =
      []<Semiregular T>(bool b, T x) {
        return b ? maybe_view{std::move(x)}
                 : maybe_view<T>{};
      };
    
    /*
    > Быть может, что для кого-то это язык родной, но для меня всё
    это ощущается как если бы кто-то решил, что Perl излишне читабельный,
    а Brainfuck — излишне нечитабельный, поэтому давайте целиться между
    ними. Я программировал в основном на C++ все последние 20 лет. Может
    быть, я слишком тупой, чтобы во всём этом разобраться, отлично.
    */

    Какой багор)))

    j123123, 31 Января 2019

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    https://www.opennet.ru/opennews/art.shtml?num=50026
    
    После двух лет разработки компания The Qt Company представила
    компактный встроенный http-сервер для Qt, доступный для
    разработчиков приложений в виде класса QHttpServer. Сервер
    пока развивается как экспериментальный проект Qt Labs, но
    запланирован для включения в основной состав Qt 6.

    Вот жеж этим [censored] делать нехер. Вы уже в Qt встроили жабаскрипт ( https://doc.qt.io/qt-5/topics-scripting.html ), и даже встроили браузер, но вам этого мало, вы еще и вебсервер встроили. Встройте еще туда и PHP, чтоб вообще всё возможное говно в себя вобрать

    j123123, 26 Января 2019

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

    +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
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    // https://www.tutorialspoint.com/Read-a-character-from-standard-input-without-waiting-for-a-newline-in-Cplusplus
    
    
    
    // A portable solution doesn't exist for doing this. On windows, you can use the getch() function from the conio(Console I/O) library to get characters pressed. For example,
    
    #include<iostream>
    #include<conio.h>
    using namespace std;
    int main() {
        char c;
        while(1){ // infinite loop
            c = getch();
            cout << c;
        }
    }
    
    // This will output whatever character you input to the terminal. Note that this will only work on windows as the conio library exists only on windows. On UNIX, you can achieve this by entering in system raw mode. For example,
    
    #include<iostream>
    #include<stdio.h>
    int main() {
        char c;
       // Set the terminal to raw mode
        system("stty raw");
        while(1) {
            c = getchar(); 
            // terminate when "." is pressed
            if(c == '.') {
                system("stty cooked");
                exit(0);
            }  
            std::cout << c << " was pressed."<< std::endl;
        }
    }

    Вариант под UNIX еще и очень секурный, ЕВПОЧЯ

    j123123, 22 Января 2019

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    HRESULT SomeClass::GetVersion(std::wstring& version)
    {
        CComBSTR versionBstr;
        m_Interface->get_Version(&versionBstr);
        version = std::move(std::wstring((_bstr_t)versionBstr, versionBstr.Length()));
        return S_OK;
    }

    Как показать в одном методе (не)знание move семантики, правил приведения типов и COM фреймворка

    salamon_style, 18 Января 2019

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

    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
    #include <iostream>
    
    int main()
    {
    setlocale(LC_ALL, "Russian");
    long long int num;
    long long int divider = 1;
    int max = 0;
    int min = 9;
    std::cout.unsetf(std::ostream::unitbuf);
    std::cout « "Введите число: ";
    std::cin » num;
    while(num>=divider)
    {
    if(num/divider%10>max) max = num/divider%10;
    if(num/divider%10<min) min = num/divider%10;
    divider = divider * 10;
    }
    std::cout « max « " - большая цифра" « '\n';
    std::cout « min « " - меньшая цифра";
    return 0;
    }

    BelCodeMonkey, 14 Января 2019

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

    0

    1. 1
    2. 2
    Почему весь С++ засран явными неймспейсами std:: ?
    Если из-за коллизий, то почему с этим нету проблем в C#, Java?

    Lorip1971, 10 Января 2019

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

    −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
    std::optional<int64_t> readNumber(const wchar_t *&str)
    {
        const wchar_t *origStr = str;
    
        if (*str == L'-' || *str == L'+') {
            str++;
            if (!std::iswdigit(*str)) {
                str--;
                return {};
            }
        } else {
            if (!std::iswdigit(*str)) {
                return {};
            }
        }
    
        while (std::iswdigit(*str)) {
            str++;
        }
    
        return wcstoll(origStr, NULL, 10);
    }

    А всё потому, что доки по «wcstoll» надо читать!

    gost, 07 Января 2019

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

    +4

    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
    #include <stdio.h>
    #include <string>
    
    const struct FooAgeProperty {} age;
    const struct FooNameProperty {} name;
    
    template <typename T>
    struct FooPropertyAssignment {
    	FooPropertyAssignment(T* prop): prop(prop) { }
    
    	T* prop;
    };
    
    struct years {
    	int i;
    
    	years& operator=(FooPropertyAssignment<int> fpa) {
    		*fpa.prop = i;
    		return *this;
    	}
    };
    
    struct nam {
    	std::string s;
    
    	nam& operator=(FooPropertyAssignment<std::string> fpa) {
    		*fpa.prop = s;
    		return *this;
    	}
    };
    
    years operator""years(unsigned long long value) {
    	return { (int)value };
    }
    
    nam operator""_(const char* value, size_t) {
    	return { value };
    }
    
    struct NegativeFoo {
    	NegativeFoo(int* age, std::string* name): age(age), name(name) {}
    
    	int* age;
    	std::string* name;
    };
    
    FooPropertyAssignment<int> operator<(FooAgeProperty fap, NegativeFoo nfoo) {
    	return FooPropertyAssignment<int>(nfoo.age);
    }
    
    FooPropertyAssignment<std::string> operator<(FooNameProperty fnp, NegativeFoo nfoo) {
    	return FooPropertyAssignment<std::string>(nfoo.name);
    }
    
    struct Foo;
    Foo* nasty_global_variable;
    
    struct Foo {
    	Foo() {
    		nasty_global_variable = this;
    	}
    
    	NegativeFoo operator-() {
    		return NegativeFoo(&age, &name);
    	}
    
    	int age;
    	std::string name;
    };
    
    struct to_string {
    	struct foo {
    		foo(int (*)(const char*, ...)) {
    			printf(".old years %d am I and %s is name My\n", nasty_global_variable->age, nasty_global_variable->name.c_str());
    		}
    	};
    };
    
    int main() {
    	Foo foo;
    	5years = age<-foo;
    	"Billy"_ = name<-foo;
    	(to_string::foo)printf;
    }

    https://www.reddit.com/r/ProgrammerHumor/comments/acv2og/just_wrote_my_first_program_in_c/

    Nyamka, 06 Января 2019

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

    −1

    1. 1
    .

    Справедливо ли утверждение о том, что большинство из присутствующих дрочатся с программированием и прочей ойти хуйней почти всё свободное и всё рабочее время?

    crestoblyad, 05 Января 2019

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