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

    +129

    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 <stdio.h>
    
    #define квот [
    #define квзак ]
    #define фигот {
    #define фигзак }
    #define главный main
    #define напечатать(x) printf("%s", x)
    #define псевдоним typedef
    #define конст const
    
    псевдоним int цел;
    псевдоним char символ;
    
    цел главный()
    фигот
    
    конст символ* строки квот квзак = фигот "Привет, ", "мир!" фигзак;
    напечатать(строки квот 0 квзак);
    напечатать(строки квот 1 квзак);
    
    фигзак

    http://www.gamedev.ru/code/forum/?id=192614
    У человека проблема - его напрягает переключение раскладок при написании кода.
    Я в шутку предложил такое решение проблемы. Для написания кода главной функции теперь не нужно переключения раскладок!

    Запостил: gammaker, 27 Августа 2014

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

    • > У человека проблема
      Мне бы ваши проблемы...
      Ответить
      • P.S. Прикол в том, что я не помню, где в русской раскладке находятся ; " и т.п., и всегда переключаюсь на латиницу и обратно, чтобы их набрать посреди русского текста...

        И меня это совсем не напрягает, да.
        Ответить
        • У меня аналогично. Особенно часто я переключаю раскладку при наборе знака вопроса, потому что так привычнее.
          Ответить
        • У меня клава без русских букв, но мои пальцы чудесным образом помнят, куда нужно жать, даже в случае спецсимволов. При этом головой я этого совершенно не помню. Когда мне нужно узнать, где находится буква или знак, я жму неосознанно и смотрю, куда нажал.
          Ответить
          • > но мои пальцы чудесным образом помнят, куда нужно жать, даже в случае спецсимволов
            Вот в том и соль. Только мои пальцы вместо нормальной русской " в верхнем ряду помнят комбо ctrl-shift + " (на английской) + ctrl-shift. Так исторически сложилось. И переучиваться влом.
            Ответить
            • Если бы я помнил все раскладки всех языков на которых мне нужно печатать, ни для чего полезного места не осталось бы. Пользуюсь исключетельно фонетическим набором (т.е. нужно помнить только латиницу).
              Ответить
          • На укороченных клавах как жить?
            Ответить
        • Аналогично. Но сцуко, точку набираю без переключения и постоянно путаю где она. То в русской ю наберу, то в английской /
          Ответить
    • я бы предложил не писать в коде на русском
      Ответить
      • Ну либо уйти в 1с, и писать только на русском.
        Ответить
        • Я видел украинский интерпретатор паскаля на украинском, жаль не годится для продакшена.
          Ответить
      • Я бы тоже предложил, но меня опередили. Пришлось придумывать альтернативный вариант для извращенцев.
        Ответить
      • Совершенно верно напрягает переключение языка go в Brainfuck таких проблем там нет.
        Ответить
      • Действительно. проще один раз написать "Hello, world!" чем всю эту хуегу
        Ответить
    • Переключение раскладки по caps lock спасет отца русского геймдева.
      Ответить
    • //файл test.h


      #ifndef ЖЕСТЬ
      #define ЖЕСТЬ

      #define ВОБЛИН void
      #define бублик public
      #define хренвам private
      #define атас class
      #define всучить return
      #define буковка char
      #define нетрожь const
      #define типа typedef
      #define НАЧИТЬ {
      #define КОНЧИТЬ }
      #define БУБЛИК 0
      #define ТЭКСТ std::cout
      #define ВПЭНДЮРИТЬ <<
      #define ВЫПЭНДЮРИТЬ >>

      типа int вжик;

      атас Нихренасебе
      НАЧИТЬ
      бублик:
      Нихренасебе(ВОБЛИН);
      Нихренасебе(вжик первоначальнаяхрень);
      ~Нихренасебе(ВОБЛИН);

      ВОБЛИН SetХрень(вжик новаяхрень);
      вжик GetХрень(ВОБЛИН);

      хренвам:
      вжик хрень;
      КОНЧИТЬ;

      #endif

      //////////////////////////////////////////////////////////////////////////////////

      //файл test.cpp

      #include "test.h"
      #include <iostream>

      Нихренасебе::Нихренасебе(ВОБЛИН) : хрень(БУБЛИК) НАЧИТЬ КОНЧИТЬ

      Нихренасебе::Нихренасебе(вжик первоначальнаяхрень) :
      хрень(первоначальнаяхрень) НАЧИТЬ КОНЧИТЬ

      Нихренасебе::~Нихренасебе(ВОБЛИН) НАЧИТЬ КОНЧИТЬ

      ВОБЛИН Нихренасебе::SetХрень(вжик новаяхрень)
      НАЧИТЬ хрень = новаяхрень; КОНЧИТЬ

      вжик Нихренасебе::GetХрень(ВОБЛИН)
      НАЧИТЬ всучить хрень; КОНЧИТЬ

      вжик main(нетрожь буковка парамс[], нетрожь вжик тарарамс)
      НАЧИТЬ
      Нихренасебе ДанунаХ(10);
      ТЭКСТ ВПЭНДЮРИТЬ ДанунаХ.GetХрень();
      всучить БУБЛИК;
      КОНЧИТЬ
      Ответить
      • >нетрожь буковка парамс[]
        Это же массив строк должен быть, а не символов. Нужно в test.h добавить
        #define звездец *
        И исправить на
        нетрожь буковка звездец парамс[]
        Ответить
      • И ещё проблему переключения раскладки из-за квадратных скобок это не решит.
        Ответить
      • #define это_самое try {
        #define бля throw std::exception();
        #define да_и_хуй_с_ним } catch(...) { }
        Ответить
    • > #define напечатать(x) printf("%s", x)
      fputs(x, stdout) же

      Можно кстати еще такое:
      #define строчка "%s"
      ...
      напечатать("Строчка: " строчка, переменная);

      Ответить
    • Раз в пару лет такое вылезает тут постоянно. Всем кажется, что они такие офигенно остроумные, и что ничего до нас не изобрели. Да-да, конечно.
      Ответить
      • Я же не специально для говнокода писал. Я на gamedev.ru писал, а потом подумал, раз уж это говнокод, выложу сюда.
        А вообще да, я этот сайт не сканировал целиком, поэтому не видел ничего подобного.
        Ответить
    • У вас там у всех проблемы. С головой
      Ответить
      • Думаешь, они тоже состоят только из головы?
        Ответить
        • я не могу диагностировать проблемы других органов. Я программист, Джим, а не рентген.
          Ответить
    • https://pp.vk.me/c309828/v309828627/1d2c/2jMBrk28SVM.jpg - Вот правильное использование дефайнов. [:||||:]
      Ответить

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