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

    +47

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    int sync1; sync1 = 50;
    int sync[sync1];
    for (i=0; i<50; i++) {
        sync[i] = 0;
    }

    Запостил: Croessmah, 26 Марта 2015

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

    • Где здесь C++?!
      Ответить
      • >> for (i=0; i<50; i++)
        >> i++
        >> ++

        видимо только тут
        Ответить
        • Ну тут i++ а не c++, а сам ++ был еще в K&R C

          Не засчитано
          Ответить
      • Везде. Был бы это C, то тогда и выкладывать не стоило. А так...
        Ответить
    • Говнокодом может быть только компилируемый код, который якобы работает. А это - не компилируемое говно.
      Ответить
      • > А это - не компилируемое говно.
        А если скомпилирую?

        Здесь используется variable length array (VLA), которого в крестах быть как бы не должно, но gcc для удобства и совместимости припёрло его из сишки.

        http://ideone.com/DzrnYp
        Ответить
        • Тогда выкинь свой говнокомпилятор. Создать статический массив не константной длины... Или опять эти *вырезано цензурой* стандарт "улучшили"?
          Ответить
          • В C99 в стандарте есть. В крестах - расширение gcc.

            > статический
            Где ж он статический?!
            Ответить
            • в куче - динамический, на стэке - статический. Да, не правильное слово использовал... Массив постоянной длины? Пофиг.
              VLA создаётся в куче или всё-равно на стэке? У меня нет возможности использовать даже С99.(
              Ответить
              • Создаётся на стеке. Длина после строчки с объявлением не плавает. Там ещё забавно - sizeof() возвращает правильный размер.

                http://ideone.com/fj9PGz
                Ответить
                • Жесть! Вот так живёшь и не знаешь, что sizeof теперь и в рантайме работает.
                  Ответить
        • Пардон, не увидел про gcc. Его лучше не выкидывать.)
          В Сишке можно было создавать статические массивы не константной длины? Или это тоже из gcc-сишки?
          Ответить

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