1. SAJAX/PHP

    Date: 02/17/07     Keywords: no keywords

    Возьмём короткий, но типовой кусок:

    
    	function sajax_get_one_stub($func_name) {
    		ob_start();	
    		?>
    		
    		// wrapper for 
    		
    		function x_() {
    			sajax_do_call("",
    				x_.arguments);
    		}
    		
    		

    То есть ob_start() -> ob_get_contents() -> ob_end_clean()

    Йа жутко извиняусс, но что мешает использовать синтаксис PHP с <<
    BLAHBLAH
    ;

    ???!

    Например, переписать код так:

    function sajax_get_one_stub($func_name) {
    	return <<

    Source: http://community.livejournal.com/code_wtf/69878.html

  2. Java - проверка логина

    Date: 02/15/07     Keywords: java

    Кандидат на Java разработчика прислал образец своего кода. Метод, по его идее, проверяет пару логин/пароль, возвращая true в случае успеха и false если логин не прошел. Даю код целиком, с сохранением авторского форматирования. Длинновато, но из такой песни слова не выкинешь:

    public boolean  authenticate(String username2,
     String password2) {
      String query="select * from Registration;";
       String DbUserName="";
       String DbPassword="";
       String finalUser="";
      try {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
       Connection
     con=DriverManager.getConnection("jdbc:odbc:register");
       Statement stat=con.createStatement();
       ResultSet rst=stat.executeQuery(query);
       while(rst.next())
    
      {
       DbUserName=rst.getString("UserName");
    
      DbPassword=rst.getString("password");
    
       if (username2.equals(DbUserName) &&
     password2.equals(DbPassword)) {
    
     break;
         }
    
    
       }
     return true;
     }catch(Exception e){
    
     e.printStackTrace();
     return false;
     }
    }}
    

    Source: http://community.livejournal.com/code_wtf/69338.html

  3. C#

    Date: 02/14/07     Keywords: no keywords

    Можно ли проверить четность параметра как-то СЛОЖНЕЕ?

    int remainder;
    Math.DivRem(record, 2, out remainder);
    if (remainder == 0)
    { blabla}

    Уверен что если поставить такую цель - то можно!

    Source: http://community.livejournal.com/code_wtf/68911.html

  4. Это скорее называется comments_wtf, тем не менее

    Date: 02/08/07     Keywords: no keywords

    ASSERT(width); // width=”0″ is illegal and makes me a very sad panda :(

    Source: http://community.livejournal.com/code_wtf/68141.html

  5. unboxing

    Date: 02/07/07     Keywords: no keywords


    int i = new Integer(5)

    http://www.chris-lamb.co.uk/blog/2007/02/06/title-unrelated/

    Source: http://community.livejournal.com/code_wtf/68057.html

  6. number formatting

    Date: 02/06/07     Keywords: no keywords

    найдено в пхп-коде одного сайтика %)

    function append_zeros($number, $length) {
           while (strlen($number) < $length)
               $number = "0$number";
           return $number;
       }


    о sprintf("%0nd", $number) видимо не слышали )

    и оттуда же....
    function format_money($value) {
           $negative = "";
           if ($value < 0)
               $negative = "-";
           return "$negative$".number_format(abs($value), 2);
       }

    Source: http://community.livejournal.com/code_wtf/67351.html

  7. FOX Toolkit

    Date: 02/03/07     Keywords: no keywords

    // Truth values
    #ifndef TRUE
    #define TRUE 1
    #endif
    #ifndef FALSE
    #define FALSE 0
    #endif
    #ifndef MAYBE
    #define MAYBE 2
    #endif

    /*ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6-stable/All/fox-1.0.48.tbz/include/fox/fxdefs.h*/

    Source: http://community.livejournal.com/code_wtf/67282.html

  8. Калькулятор

    Date: 02/02/07     Keywords: no keywords

    http://www.gamedev.ru/flame/forum/?id=60798
    http://www.gamedev.ru/flame/forum/?id=60793 - история появления здесь

    procedure TForm1.Button1Click(Sender: TObject);
    var
      hCalc, hCalcEdit: HWND;
      hCalcMenu, hCalcSubMenu: HMENU;
      hCalcSubMenuID0, hCalcSubMenuID1: DWORD;
      ClipBoard: TClipboard;
    begin
      if Not FileExists('C:\Windows\system32\calc.exe') then begin ShowMessage('Error!'); Exit; end;
      hCalc := FindWindow('SciCalc', 0);
      if hCalc = 0 then begin
      ShellExecute(0, 'Open', 'C:\Windows\system32\calc.exe', Nil, Nil, SW_SHOWNORMAL);
      repeat
        hCalc := FindWindow('SciCalc', HWND(Nil));
      until hCalc <> 0; end;
      hCalcEdit := FindWindowEx(hCalc, 0, 'Edit', '');
      ClipBoard := TClipboard.Create;
      ClipBoard.SetTextBuf(PChar(Edit1.Text));
      hCalcMenu := GetMenu(hCalc);
      hCalcSubMenu := GetSubMenu(hCalcMenu, 0);
      hCalcSubMenuID0 := GetMenuItemID(hCalcSubMenu, 0);
      hCalcSubMenuID1 := GetMenuItemID(hCalcSubMenu, 1);
      PostMessage(hCalc, WM_COMMAND, hCalcSubMenuID1, 0);
      repeat
        PostMessage(hCalc, WM_COMMAND, hCalcSubMenuID0, 0);
        RichEdit1.Clear; RichEdit1.PasteFromClipboard;
      until (StrComp(PChar(RichEdit1.Text), PChar(Edit1.Text)) <> 0) And (StrLen(PChar(RichEdit1.Text)) <> 0);
    end;
    

    Source: http://community.livejournal.com/code_wtf/66997.html

  9. PHP и румыны

    Date: 01/26/07     Keywords: mysql, sql

    Достался один проектик, написанный румынским аутсорсерами для немцев.

    В следующей процедуре румыны проверяют, дал ли пользователь допустимое имя таблице для MySQL (имя вводится в форму, по нему создается таблица):

    Что делает этот кусочек кода? Определяет, есть ли в строке пробел. Для этого румынские умельцы определяют длину строки, удаляют из строки все пробелы, снова определяют длину и сравнивают два значения:

    if( strlen( $pName ) != strlen( str_replace(" ", "", $pName) ) )
    {//contains spaces
        $isName = false;
    }
    


    Но этого им показалось мало. Далее в той же процедуре они проверяют всю строку на цифра/буква/подчеркивание:

    for ($i=0 ; ($i < strlen($pName)) && ($isName) ; $i++ )
    {
        if( !( ctype_alpha( $pName[$i] ) || 
               ctype_digit( $pName[$i] ) ||
              ( $pName[$i] == '_' ) ) )
        {
            $isName = false;
        }
    }
    


    И не менее удачное сравнение строки с образцом, тот же проект:

    if ((strtolower($fmultipledownload) != strtolower("YES")) &&
        (strtolower($fmultipledownload) != strtolower("NO")) )
    {
        // some stuff here
    }
    

    Source: http://community.livejournal.com/code_wtf/65914.html

  10. Венгерская нотация

    Date: 01/26/07     Keywords: no keywords

    b_FillPayList=2;

    Source: http://community.livejournal.com/code_wtf/65749.html

  11. C#

    Date: 01/24/07     Keywords: asp, microsoft

    a volatile field cannot be of the type 'long'     WTF???

    PS: C# Reference       http://msdn2.microsoft.com/en-us/library/x13ttww7.aspx

    Source: http://community.livejournal.com/code_wtf/65301.html

  12. первая программа на С++

    Date: 01/22/07     Keywords: no keywords

    main(void){ (***************** (int (*) (const char*,...)) &printf)(&0["Hello world!\n"]);}
    зато читабельно стильно и  концептуально :)

    а знаете ли вы ещё какие-нибудь примеры коротких (2-3 строчки) и "неясных но не совсем не до конца" программ? 

    Source: http://community.livejournal.com/code_wtf/65072.html

  13. Панацея:)

    Date: 01/17/07     Keywords: no keywords

    #include "include.h"

    ЗЫ. include.h ~50K

    Source: http://community.livejournal.com/code_wtf/64922.html

  14. Архитектурные особенности

    Date: 01/17/07     Keywords: no keywords

    Знакомый показал строку в коде

    ((void (*)())0)();

    Хорошая инструкция..

    в коде x86 это дает
    xor EAX,EAX
    call EAX

    а на AtmelXXXX, в котором используется этот код, компилируется в
    call 0
    что вызывает сброс устройства

    К вопросу о том, что нужно всегда указывать, от какой платформы код :)
    Чтобы крышей не поехать

    Source: http://community.livejournal.com/code_wtf/64707.html

  15. вот такие пирожки

    Date: 01/13/07     Keywords: no keywords

    Приветствую тебя, All :)  
    Этим летом я работал на одном из предприятий, которое занималось разработкой автоматики.
    Этот код я обнаружил в исходниках системы защиты от аварии:

    double cos(double radians)
    {
      double result = 0;
      double sign = 0;
      double x2n = 0;
      double factorial = 0;
      int n, count;

      for (n = 0; n < 10; n ++)
        {
          sign = 1.0;
          for (count = 0; count < n; count ++)
         sign *= (double) -1;
         x2n = 1.0;
          for (count = 0; count < (2 * n); count ++)
          x2n *= radians;
          factorial = 1.0;
          for (count = (2 * n); count > 0; count --)
          factorial *= (double) count;
          result += (sign * (x2n / factorial));
        }
      return (result);
    }

    весьма забавно получилось:) особенно порадовало: 
      1.   for (n = 0; n < 10; n ++)
      2.   for (count = 0; count < n; count ++)
              sign *= (double) -1;
                                               ; просто убило

    самое интересное -  программа начала сбоить лишь через год после начала выпуска -  обновили параметр  устойчивости
    и бац - он вылез за дозволенную окресноть :)

    Source: http://community.livejournal.com/code_wtf/64326.html

  16. репост

    Date: 01/12/07     Keywords: no keywords



    
    /*
    Ребята, спасите мою жопу от злого препода.. С программированием у меня запары,а задачку нужно сдать в среду уже.. Помогите кто чем сможет.
    Вот собственно как она звучит:
    1.Определить класс с именем TRAIN содержащий следующие поля:
    - название пункта назначения
    - номер поезда
    - время отправления
    Определить методы доступа к этим полям и перегруженные операции извлечения и вставки для объектов.
    2.Написать программу, выполняющую следующие действия:
    - ввод с клавиатуры данных в массив, состоящий из восьми объектов типа TRAIN записи должны быть размещены по времени отправления поезда
    - вывод на экран информации о поездах, направляющихся в пункт, введенный с клавиатуры
    - если таких поездов нет, выдать на экран соответствующее сообщение.
    */
     
    //--------------------------------------------------------------------------------------------------------
     
    // Русские буквы будут работать только в Visual Studio 2005...
     
    #if !defined (_MSC_VER) || _MSC_VER < 1400
    #error Wrong compiler! Use MSVS 8.0 (2005)
    #endif
     
    //--------------------------------------------------------------------------------------------------------
     
    #include 
    #include 
    #include <дохуя.h> // импорт констант бесконечности 
     
    using std::string;
    using std::cin;
    using std::cout;
     
    #include 
    [Error: Irreparable invalid markup ('') in entry. Owner must fix manually. Raw contents below.]





    /*
    Ребята, спасите мою жопу от злого препода.. С программированием у меня запары,а задачку нужно сдать в среду уже.. Помогите кто чем сможет.
    Вот собственно как она звучит:
    1.Определить класс с именем TRAIN содержащий следующие поля:
    - название пункта назначения
    - номер поезда
    - время отправления
    Определить методы доступа к этим полям и перегруженные операции извлечения и вставки для объектов.
    2.Написать программу, выполняющую следующие действия:
    - ввод с клавиатуры данных в массив, состоящий из восьми объектов типа TRAIN записи должны быть размещены по времени отправления поезда
    - вывод на экран информации о поездах, направляющихся в пункт, введенный с клавиатуры
    - если таких поездов нет, выдать на экран соответствующее сообщение.
    */

    //--------------------------------------------------------------------------------------------------------

    // Русские буквы будут работать только в Visual Studio 2005...

    #if !defined (_MSC_VER) || _MSC_VER < 1400
    #error Wrong compiler! Use MSVS 8.0 (2005)
    #endif

    //--------------------------------------------------------------------------------------------------------

    #include
    #include
    #include <дохуя.h> // импорт констант бесконечности

    using std::string;
    using std::cin;
    using std::cout;

    #include // tolko dla russkogo yazika v consolee!

    //--------------------------------------------------------------------------------------------------------

    class ПОЕЗДДД
    {
    private:
    string куда_доедет_если_доедет_;
    int когда_поздно_догонять_;
    ПРОЖЕКТОР прожектор_поезда_;

    public:
    ПОЕЗДДД() :
    куда_доедет_если_доедет_ (""),
    когда_поздно_догонять_ (0),
    прожектор_поезда_(ПРОЖЕКТОР::isOFF)
    {}

    ПОЕЗДДД (string omg_куда, int omg_когда) :
    куда_доедет_если_доедет_ (omg_куда),
    когда_поздно_догонять_ (omg_когда)
    {}

    string куда_уедет_если_доедет() { return куда_доедет_если_доедет_; }
    void куда_уедет_если_доедет (string omg_куда) { куда_доедет_если_доедет_ = omg_куда; }

    int когда_поздно_догонять() { return когда_поздно_догонять_; }
    void когда_поздно_догонять (int omg_когда) { когда_поздно_догонять_ = omg_когда; }

    void уважаемые_пассажиры()
    {
    cout << "Уважаемые пассажиры,\n"
    << "поезд до станции " << куда_уедет_если_доедет() << " "
    << "оправляецца в " << когда_поздно_догонять() << " "
    << "с третьего пути. ";
    }

    void так_вы_диспетчер_а_нука_внимательней()
    {
    string кулички = ""; int хз = 0;
    cout << "Станцию введи!!!!!!! "; cin >> кулички; куда_уедет_если_доедет (кулички);
    cout << "Круто. А едет когда? "; cin >> хз; когда_поздно_догонять (хз);
    }
    };
    //--------------------------------------------------------------------------------------------------------
    bool ПОЕЗДДД::включить_прожектор_на_поезде()
    {
    try
    {
    прожектор_поезда_ = ПРОЖЕКТОР::isON;
    }
    catch(Ёпрст)
    {
    return false;
    }
    return true;
    }
    //--------------------------------------------------------------------------------------------------------
    bool ПОЕЗДДД::выключить_прожектор_на_поезде()
    {
    try
    {
    прожектор_поезда_ = ПРОЖЕКТОР::isOFF;
    }
    catch(Ёпрст)
    {
    return false;
    }
    return true;
    }
    //--------------------------------------------------------------------------------------------------------

    void Головная_Боль_Диспетчера (ПОЕЗДДД блять_расписание[],
    int блять_строка_его,
    ПОЕЗДДД гребаный_поезд)
    {
    int куда_вставлять = 0;
    for (куда_вставлять = 0; куда_вставлять < блять_строка_его; куда_вставлять++)
    if (блять_расписание[куда_вставлять].когда_поздно_догонять() > гребаный_поезд.когда_поздно_догонять())
    break;

    for (int двигай_двигай = блять_строка_его; двигай_двигай > куда_вставлять; двигай_двигай--)
    блять_расписание[двигай_двигай] = блять_расписание[двигай_двигай-1];

    блять_расписание[куда_вставлять] = гребаный_поезд;
    }

    //--------------------------------------------------------------------------------------------------------

    void Алло_Справочная (ПОЕЗДДД гребаное_расписание[], int можно_поставить_8, string куда_надо_то)
    {
    int скоко_нашли = 0;
    for (int i = 0; i < можно_поставить_8; i++) // Пусть будет просто i.
    if (куда_надо_то == "хз" || гребаное_расписание[i].куда_уедет_если_доедет() == куда_надо_то)
    {
    гребаное_расписание[i].уважаемые_пассажиры(); cout << "\n";
    скоко_нашли++;
    }
    for(int i = 0; i < дохуя; i ++); // Справочная типа долго думает. Абнормал тупой.
    if (!скоко_нашли)
    cout << "В Вашу " << куда_надо_то << " не ездим. Песдуйте на автобусах. С уважением, РЖД.\n";
    }

    //--------------------------------------------------------------------------------------------------------

    int main()
    {
    _wsetlocale (LC_ALL, L"Russian_Russia.ACP"); // Это все только для русского языка.
    SetConsoleCP (1251);
    SetConsoleOutputCP (1251);

    cout << "\nThis is " << __FILE__ << " " << __DATE__ << " " << __TIME__ << "\n\n" <<
    "Это расписание_нах!\n"
    "Станции из одного слова. Больше нельзя!!! Время в цифрах. Только! Без ошибок!!!\n" <<
    "Ну!!!!\n";

    const int скоко_ща_поездоф = 8;
    ПОЕЗДДД расписание_бля [скоко_ща_поездоф];

    for (int i = 0; i < скоко_ща_поездоф; i++)
    {
    cout << "\nПОЕЗДДД " << i+1 << "/" << скоко_ща_поездоф << "\n";
    ПОЕЗДДД задрали_блин_введем_новый_поезд;
    задрали_блин_введем_новый_поезд.так_вы_диспетчер_а_нука_внимательней();
    Головная_Боль_Диспетчера (расписание_бля, i, задрали_блин_введем_новый_поезд);
    }
    cout << "\n";

    long long куча = 0;
    for (;;)
    {
    string вот_туда = "";
    cout << "Алё, ехать куда? "; cin >> вот_туда;
    if (вот_туда == "нах") break;

    cout << "\n";
    Алло_Справочная (расписание_бля, скоко_ща_поездоф, вот_туда);
    cout << "\n";

    куча += вот_туда.length();
    }

    cout << "\nКруто блин. С вас " << куча << " бакс" << ( куча%10 == 0 ||
    5 <= куча%10 && куча%10 <= 9 ||
    10 <= куча%100 && куча%100 <= 14? "ов" :
    2 <= куча%10 && куча%10 <= 4? "а" : "")
    << ". С уважением, РЖД.\n\n";

    system ("pause");
    }
    /*
    ЧЕЛОВЕК КОТОРЫЙ ЭТО НАПИСАЛ - ПОЛНЫЙ ПРИДУРОК. В ПРОГРАМИРОВАНИЕ ЕМУ ДЕЛАТЬ НЕЧЕГО. ЛУЧШЕ ПУСТЬ ПИШЕТ ЮМОРИСТИЧЕСКИЕ РАСКАЗЫ, ЭТО У НЕГО НЕ ПЛОХО ПОЛУЧАЕТСЯ
    */

    /*
    На мой взгляд Афтор ЖЖОТ!!!! НИПДЕЦКИ! Валялсо.....
    */

    /* И что это работает?! */



    Source: http://community.livejournal.com/code_wtf/64071.html

  17. .NET 2.0

    Date: 01/10/07     Keywords: no keywords

    исходники MS Dotnet 2.0
    файл asmman.cpp

    AsmManFile* AsmMan::GetFileByName(__in __nullterminated char* szFileName)
    {
    AsmManFile* ret = NULL;
    if(szFileName)
    {
    //AsmManFile X;
    //X.szName = szFileName;
    //ret = m_FileLst.FIND(&X);
    //X.szName = NULL;
    for(int i=0; (ret = m_FileLst.PEEK(i))&&strcmp(ret->szName,szFileName); i++);
    }
    return ret;
    }

    Source: http://community.livejournal.com/code_wtf/63572.html

  18. Взято из asterisk'а

    Date: 01/05/07     Keywords: no keywords

        if (action == ACTION_EXISTS)
            res = 0;
        else
            res = -1;
        if (action == ACTION_OPEN)
            ret = -1;
    


    Update: действительно, не совсем очевидно из этого кусочка:)

    Разверну:
    ... (..., int action)
        int res=0, ret = 0;
    
        /* Start with negative response */
        if (action == ACTION_EXISTS)
            res = 0;
        else
            res = -1;
        if (action == ACTION_OPEN)
            ret = -1;
        ...
                        res = stat(fn, &st);
                        if (!res) {
        ...
        if ((action == ACTION_EXISTS) || (action == ACTION_OPEN))
            res = ret ? ret : -1;
        return res;
    

    Понять к чему res к чему ret неясно, но инициализация res совершенно бесполезна -- всё равно заоверрайдится, а даже если и не заоверрайдится -- то заменится на ret либо всё равно надо -1 вернуть.

    Source: http://community.livejournal.com/code_wtf/62434.html

  19. как вы думаете

    Date: 01/03/07     Keywords: php

    .., а почему я написал во такой WTF:

    $matched = preg_match($searchPattern, $data2);
    if ($matched) {
      $matched = true;
    } else {
      $matched = false;
    }
    
    ?

    A потом такой:
    $one = 'grejfer';
    $one = 'peregruz';
    $one = 'mehanizm';
    
    ?

    UPD: это PHP.
    добавил одну строчку из контекста, теперь видно, что null в принципе невозможен. массив найденных значений не сохраняется, поэтому либо 0, либо положительная истина.

    Source: http://community.livejournal.com/code_wtf/61504.html

  20. Smallworld MAGIK: The object oriented language for an object oriented world

    Date: 12/28/06     Keywords: software, java

    Путешествуя по просторам интернета в поисках инфомации по одной из программ, наткнулся на описания замечательного, чисто объектно-ориентированного языа Smallworld MAGIK. Приведу цитату, которая может порадовать знатоков ООП:

    Java and C# are typed languages, Smallworld MAGIK is not (it is what is called polymorphic).

    http://www.gepower.com/prod_serv/products/gis_software/en/downloads/GER4235_MAGIK_R2.pdf

    Source: http://community.livejournal.com/code_wtf/61228.html

Previous page  ||  Next page


antivirus | apache | asp | blogging | browser | bugtracking | cms | crm | css | database | ebay | ecommerce | google | hosting | html | java | jsp | linux | microsoft | mysql | offshore | offshoring | oscommerce | php | postgresql | programming | rss | security | seo | shopping | software | spam | spyware | sql | technology | templates | tracker | virus | web | xml | yahoo | home