1. Лучший говнокод

    В номинации:
    За время:
  2. C++ / Говнокод #16797

    +57

    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
    for (j=0;j<3;j++) {
    			tmp += member[i].V[2][j] * member[i].V[0][j];}
    		if (tmp > LENGTH_EPS) {
    			if ( node[member[i].n0].u_fix.y == 0 ) { //if node #1 is not fixed
    				if ( node[member[i].n0].teta_fix.x == 0 ) { //if node #3 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+1,	FreeDeg*n_number[member[i].n0] +3,	6*EJz/member[i].L*tmp				);} //k(1,3)
    				if ( node[member[i].n1].teta_fix.x == 0 ) {	//if node #9 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+1,	FreeDeg*n_number[member[i].n1] +3,	6*EJz/member[i].L*tmp				);} //k(1,9)
    			}
    			if ( node[member[i].n0].u_fix.z == 0 ) { //if node #2 is not fixed
    				if ( node[member[i].n0].u_fix.x == 0 ) { //if node #0 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+2,  FreeDeg*n_number[member[i].n0],		12*EJy/pow(member[i].L,2)*tmp 	);} //k(2,0)
    				if ( node[member[i].n1].u_fix.x == 0 ) { //if node #6 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+2,  FreeDeg*n_number[member[i].n1],		-12*EJy/pow(member[i].L,2)*tmp 	);} //k(2,6)
    			}
    			if ( node[member[i].n0].teta_fix.y == 0 ) { //if node #4 is not fixed
    				if ( node[member[i].n0].u_fix.x == 0 ) { //if node #0 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+4,	FreeDeg*n_number[member[i].n0],		-6*EJy/member[i].L*tmp 			);} //k(4,0)
    				if ( node[member[i].n1].u_fix.x == 0 ) { //if node #6 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+4,	FreeDeg*n_number[member[i].n1],		6*EJy/member[i].L*tmp 			);} //k(4,6)
    			}
    			if ( node[member[i].n0].teta_fix.z == 0 ) { //if node #5 is not fixed
    				if ( node[member[i].n0].teta_fix.x == 0 ) { //if node #3 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+5,  FreeDeg*n_number[member[i].n0] +3,	4*EJz*tmp				);} //k(5,3)
    				if ( node[member[i].n1].teta_fix.x == 0 ) {	//if node #9 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+5,  FreeDeg*n_number[member[i].n1] +3,  2*EJz/member[i].L*tmp 	);} //k(5,9)
    			}
    			if ( node[member[i].n1].u_fix.y == 0) { //if node #7 is not fixed
    				if ( node[member[i].n0].teta_fix.x == 0 ) { //if node #3 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+1,	FreeDeg*n_number[member[i].n0] +3,	-6*EJz/member[i].L*tmp 			);} //k(7,3)
    				if ( node[member[i].n1].teta_fix.x == 0 ) {	//if node #9 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+1,	FreeDeg*n_number[member[i].n1] +3,	-6*EJz/member[i].L*tmp 			);} //k(7,9)
    			}
    			if ( node[member[i].n1].u_fix.z == 0 ) { //if node #8 is not fixed
    				if ( node[member[i].n0].u_fix.x == 0 ) { //if node #0 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+2,  FreeDeg*n_number[member[i].n0],		-12*EJy/pow(member[i].L,2)*tmp 	);} //k(8,0)
    				if ( node[member[i].n1].u_fix.x == 0 ) { //if node #6 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+2,  FreeDeg*n_number[member[i].n1],		12*EJy/pow(member[i].L,2)*tmp 	);} //k(8,6)
    			}
    			if ( node[member[i].n1].teta_fix.y == 0 ) { //if node #10 is not fixed
    				if ( node[member[i].n0].u_fix.x == 0 ) { //if node #0 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+4,	FreeDeg*n_number[member[i].n0],		-6*EJy/member[i].L*tmp			);} //k(10,0)
    				if ( node[member[i].n1].u_fix.x == 0 ) { //if node #6 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+4,	FreeDeg*n_number[member[i].n1],		6*EJy/member[i].L*tmp 			);} //k(10,6)
    			}
    			if ( node[member[i].n1].teta_fix.z == 0 ) {	//if node #11 is not fixed
    				if ( node[member[i].n0].teta_fix.x == 0 ) { //if node #3 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+5,  FreeDeg*n_number[member[i].n0] +3,	2*EJz*tmp 				);} //k(11,3)
    				if ( node[member[i].n1].teta_fix.x == 0 ) {	//if node #9 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+5,  FreeDeg*n_number[member[i].n1] +3,	4*EJz*tmp 				);} //k(11,9)
    			}
    		}		
    		
    		//SUM(Lzi * Lyi),   i=x0,y0,z0
    		tmp = 0;
    		for (j=0;j<3;j++) {
    			tmp += member[i].V[2][j] * member[i].V[1][j];}
    		if (tmp > LENGTH_EPS) {
    			if ( node[member[i].n0].u_fix.y == 0 ) { //if node #1 is not fixed
    				if ( node[member[i].n0].teta_fix.y == 0 ) { //if node #4 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+1,	FreeDeg*n_number[member[i].n0] +4,	6*EJz/member[i].L*tmp			); //k(1,4)
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+4,	FreeDeg*n_number[member[i].n0] +1,	-6*EJy/member[i].L*tmp 			); //k(4,1)
    				}
    				if ( node[member[i].n1].teta_fix.y == 0 ) { //if node #10 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+1,	FreeDeg*n_number[member[i].n1] +4,	6*EJz/member[i].L*tmp			); //k(1,10)
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+4,	FreeDeg*n_number[member[i].n0] +1,	-6*EJy/member[i].L*tmp			); //k(10,1)
    				}
    			}
    			if ( node[member[i].n1].u_fix.y == 0) { //if node #7 is not fixed
    				if ( node[member[i].n0].teta_fix.y == 0 ) { //if node #4 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n0]+4,	FreeDeg*n_number[member[i].n1] +1,	6*EJy/member[i].L*tmp 			); //k(4,7)
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+1,	FreeDeg*n_number[member[i].n0] +4,	-6*EJz/member[i].L*tmp 			); //k(7,4)
    				}
    				if ( node[member[i].n1].teta_fix.y == 0 ) { //if node #10 is not fixed
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+1,	FreeDeg*n_number[member[i].n1] +4,	-6*EJz/member[i].L*tmp 			); //k(7,10)
    					k_var.AddNewElement( FreeDeg*n_number[member[i].n1]+4,	FreeDeg*n_number[member[i].n1] +1,	6*EJy/member[i].L*tmp 			); //k(10,7)
    				}
    			}
    
    ..............................еще 10 страниц

    математики... бессмысленные и беспощадные.

    FadeToBlack, 04 Октября 2014

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

    +57

    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
    class C3D
    {
    public:
      //C3D()  {}  // Constructor
      //~C3D()  {}  // Destructor
    
      void(*init)(float R, float A, float B, float Rmin, float Rmax, float Bmin, float Bmax);  // Initialize work with 3D standard camera
      void(*setCamera)(int iType);  // Set type of camera
      void(*setPosition)(float x, float y, float z);  // Set position
      void(*setRender3D)();
      UINT(*addMesh)(LPCWSTR sMesh);  // Add Mesh
      void(*renderMesh)(UINT idMesh, float x, float y, float z);
      void(*renderMeshSubset)(UINT idMesh, UINT idSubset, float x, float y, float z);
      void(*renderMeshSubsetRotateX)(UINT idMesh, UINT idSubset, float x, float y, float z, float a);
    // простыня указателей на функции урезана
    
      void setHModule(HMODULE hLib)
      {
        m_hLib = hLib;
    
        (FARPROC &)init = GetProcAddress(m_hLib, "init3D");  // Initialize work with 3D standard camera
        (FARPROC &)setCamera = GetProcAddress(m_hLib, "setCamera");  // Set type of camera
        (FARPROC &)setPosition = GetProcAddress(m_hLib, "setPosition");  // Set position
        (FARPROC &)setRender3D = GetProcAddress(m_hLib, "setRender3D");
        (FARPROC &)addMesh = GetProcAddress(m_hLib, "addMesh");  // Add Mesh
        (FARPROC &)renderMesh = GetProcAddress(m_hLib, "renderMesh");
        (FARPROC &)renderMeshSubset = GetProcAddress(m_hLib, "renderMeshSubset");
        (FARPROC &)renderMeshSubsetRotateX = GetProcAddress(m_hLib, "renderMeshSubsetRotateX");
    // простыня GetProcAddress урезана
      }
    
    protected:
      HMODULE  m_hLib;  // NetWars.dll
    };

    Некий SDK для MMO-игр за авторством одного известного разработчика.

    bazhenovc, 25 Сентября 2014

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

    +57

    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
    void NestMathematica::DATABS(){
      int ks1 = 0;
      int ns1=0;
      int ns=0;
      ia=-1;
      ia=ia+1;
      b[ia]=-ak[0];
      ia=ia+1;
      b[ia]=alfa;
      mud=1;
      mld=1;
      if(ks!=1){
        ia=ia+1;
        b[ia]=0.;
        ks1=ks-1;
        for(int i=0; i<ks1; i++){
          ns1=ns;
          ns=ns+1;
          if(ns!=1){
            ia=ia+1;
            b[ia]=0.;
          }
          ia=ia+1;
          b[ia]=ak[ns1];
          ia=ia+1;
          b[ia]=0.;
          ia=ia+1;
          b[ia]=-ak[ns];
          ia=ia+1;
          b[ia]=0.;
          ia=ia+1;
          b[ia]=h[ns1];
          ia=ia+1;
          b[ia]=1.;
          ia=ia+1;
          b[ia]=0.;
          ia=ia+1;
          b[ia]=-1.;
          if(ns!=ks){
            ia=ia+1;
            b[ia]=0.;
          }
        }
        mud=2;
        mld=2;
        ia=ia+1;
        b[ia]=0.;
      }	//10
      if(beta<0){
        ia=ia+1;
        b[ia]=h[ks-1];
        ia=ia+1;
        b[ia]=1.;
      }else{
        ia=ia+1;
        b[ia]=ak[ks]+beta*h[ks];
        ia=ia+1;
        b[ia]=beta;
      }
      return;
    }

    Программист на фортране может программировать на любом языке... как на фортране.

    Abbath, 16 Сентября 2014

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

    +57

    1. 1
    if (!this) return;

    Actine, 05 Сентября 2014

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

    +57

    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
    #include "TrayIcon.h"
    
    // ----------------------------------------------------------------------------
    
    TrayIcon::TrayIcon(QObject* parent) : QSystemTrayIcon(parent),
                                          INTERVAL(1000),
                                          WIDTH_ICON(30), HEIGHT_ICON(30)
    {
        currentDate = QDate(0, 0, 0);
    
        defaultIcon = QPixmap(WIDTH_ICON, HEIGHT_ICON);
        defaultIcon.fill(Qt::black);
    
        reminderIcon = QPixmap(WIDTH_ICON, HEIGHT_ICON);
        reminderIcon.fill(Qt::yellow);
    
        thousandthDayIcon = QPixmap(WIDTH_ICON, HEIGHT_ICON);
        thousandthDayIcon.fill(Qt::green);
    
        dialogBoxIsActive = false;
    
        readSettings();
    
        wasReminder = false;
        wasCongratulation = false;
        wasSetNewDate = false;
    
        slotUpdateDate();
    
        QMenu* contextMenu = new QMenu;
    
        contextMenu->addAction("Set date of birth...",
                                                 this, SLOT(slotSetDateOfBirth()));
    
        QAction* autorunAction = contextMenu->addAction("Autorun",
                                                 this, SLOT(slotSetAutorun(bool)));
        autorunAction->setCheckable(true);
        autorunAction->setChecked(autorun);
    
        contextMenu->addSeparator();
    
        contextMenu->addAction("About...", this, SLOT(slotAboutMyProgram()));
    
        contextMenu->addSeparator();
    
        contextMenu->addAction("Quit", qApp, SLOT(quit()));
    
        setContextMenu(contextMenu);
    
        QTimer* timer = new QTimer(this);
        connect(timer, SIGNAL(timeout()), SLOT(slotUpdateDate()));
        timer->start(500);
    }
    
    // ----------------------------------------------------------------------------
    
    void TrayIcon::slotUpdateDate()
    {
        if((currentDate != QDate::currentDate()) || wasSetNewDate)
        {
            currentDate = QDate::currentDate();
    
            daysToThousandthDay
                           = INTERVAL - dateOfBirth.daysTo(currentDate) % INTERVAL;
    
            wasCongratulation = false;
            wasReminder = false;
            wasSetNewDate = false;
    
            if((daysToThousandthDay != INTERVAL) && (daysToThousandthDay != 1))
            {
                setIcon(QIcon(defaultIcon));
                setToolTip("Until next thousandth day in " +
                                 QString().number(daysToThousandthDay) + " days.");
            }
            else
            {
                if(daysToThousandthDay == 1)
                {
                    if(!wasReminder)
                        reminderBeforeDay();
                }
                else
                {
                    if(!wasCongratulation)
                        congratulation();
                }
            }
        }
    }

    Описание конструктора и одного из методов класса иконки в системном трее из программы, которая должна оповещать пользователя о каждом тысячном дне его жизни. Написано на Qt.

    Полная версия:

    main: http://pastebin.com/DEKiMWdb

    хедер класса иконки трея: http://pastebin.com/rN9NwBPB
    .cpp класса иконки трея: http://pastebin.com/uuyf5uxX

    хедер класса окна ввода даты рождения: http://pastebin.com/bmfAbFwg
    .cpp класса окна ввода даты рождения: http://pastebin.com/3R8BaPFC

    darkKnight, 18 Августа 2014

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

    +57

    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
    bool Processor::check_holes(int x, int y){
        int scale = 1000000;
        if((x > (die_size-mem_size)/2*scale && x < (die_size-mem_size)*scale) && (y > (die_size-mem_size)/2*scale && y < (die_size-mem_size)*scale)){
            return false;
        }
        if((x > (die_size-mem_size)*scale) && (y > (die_size-mem_size)/2*scale && y < (die_size-mem_size)*scale)){
            if(((int)(x - (die_size-mem_size)*scale) % 400) > 340 && ((int)(y - (die_size-mem_size)/2*scale) % 400) > 340){
                if((x - (die_size-mem_size)*scale) < 2400){
                    return true;
                }
            }
        }
        if((x < (die_size-mem_size)/2*scale) && (y > (die_size-mem_size)/2*scale && y < (die_size-mem_size)*scale)){
            if(((int)((die_size-mem_size)/2*scale - x) % 400) > 340 && ((int)(y - (die_size-mem_size)/2*scale) % 400) > 340){
                if(((die_size-mem_size)/2*scale - x) < 2400){
                    return true;
                }
            }
        }
        if((y > (die_size-mem_size)*scale) && (x > (die_size-mem_size)/2*scale && x < (die_size-mem_size)*scale)){
            if(((int)(y - (die_size-mem_size)*scale) % 400) > 340 && ((int)(x - (die_size-mem_size)/2*scale) % 400) > 340){
                if((y - (die_size-mem_size)*scale) < 2400){
                    return true;
                }   
            }
        }
        if((y < (die_size-mem_size)/2*scale) && (x > (die_size-mem_size)/2*scale && x < (die_size-mem_size)*scale)){
            if(((int)((die_size-mem_size)/2*scale - y) % 400) > 340 && ((int)(x - (die_size-mem_size)/2*scale) % 400) > 340){
                if(((die_size-mem_size)/2*scale - y) < 2400){
                    return true;
                }
            }
        }
        return false;
    }

    Проверяем дырки

    Abbath, 13 Августа 2014

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

    +57

    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
    struct ShaderBuilder
    {
    	Shader ToShader() const;
    
    	ShaderParts::VertexDataSrc VertexDataSource;
    	ShaderParts::Transform Transformation;
    	ShaderParts::LightControl LightControl;
    	ShaderParts::ColorSrc DiffuseSource;
    	ShaderParts::EmissionSrc EmissionSource;
    	ShaderParts::SpecularSrc SpecularSource;
    	ShaderParts::HeightSrc HeightSource;
    	ShaderParts::NormalSrc NormalSource;
    	ShaderParts::Parallax Parallax;
    	ShaderParts::LightModel LightModel;
    
    	...
    };
    
    #define with(x) for(auto &_=(x), *firstIter=&_; firstIter; firstIter=nullptr)
    
    ...
    
    using namespace ShaderParts;
    ShaderBuilder floorShaderBuilder;
    with(floorShaderBuilder)
    {
    	_.Transformation=Transform::Default();
    	_.LightControl=ShaderParts::LightControl::DefaultLighting({ {DirectionalLight::Type, 1} });
    	_.DiffuseSource=ColorSrc::FromTexture();
    	_.SpecularSource=SpecularSrc::FromConstants("0.25", "16.0");
    	_.HeightSource=HeightSrc::FromHeightMap();
    	_.NormalSource=NormalSrc::FromNormalMap("rg");
    	_.Parallax=Parallax::SimpleParallax();
    	_.LightModel=LightModel::Phong();
    }
    floorSh=floorShaderBuilder.ToShader();

    Вот такой оператор with на C++.

    gammaker, 04 Августа 2014

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

    +57

    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
    #include <string>
    
    std::string SearchPushString(char StartVkPage[])
    {
    	char push[] = {'p','o', 's', 't'};
    	char http[] = {'h','t', 't', 'p'};
    	unsigned int* ipush = (unsigned int*)push;
    	unsigned long j = 0;
    	do
    	{
    		char* p = &StartVkPage[j];
    		unsigned int* nextFourSymbol = (unsigned int*)p;
    		if(nextFourSymbol[0]==ipush[0])
    		{
    			if(*p=='p')
    				ipush = (unsigned int*)http;
    			else
    			{
    				char* postString = new char[650];
    				memset(postString,0,650);
    				short int u = 0;
    				do
    				{
    					postString[u] = p[u];
    				}
    				while(p[++u]!='"'&&u!=650);
    				std::string url(postString);
    				delete [] postString;
    				return url;
    			}
    		}		
    	}
    	while(StartVkPage[j++]);
    	return std::string("error");
    }

    Я все никак не выучу регулярных выражений, ИЧСХ - обхожусь.

    Psionic, 06 Апреля 2014

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

    +57

    1. 1
    for(int loshdka_skachi = 0; loshadka_skachi < pyati_raz; loshadka_skachi += prig_skok){

    оттуда
    конардо посвящается

    LispGovno, 21 Февраля 2014

    Комментарии (30)
  11. PHP / Говнокод #12458

    +57

    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
    for($i=0;$i<count($data_cor);$i++)
      {
        if(($data_cor[$i]['status'] == 1) && (($data_cor[$i]['number_packet'] == "9999998") || ($data_cor[$i]['number_packet'] == $iNumber)))
        { $_MY_LOG_counter_2 ++;
          foreach($data_cor[$i] as $key=>$value)
            $data_cor[$i][$key] = str_replace(";","",str_replace("\n","",str_replace("\r\n","",$value)));
    
          $d .= "\$Заявка\r\n";
          $d .= $data_cor[$i]['guid'].             ";".$data_cor[$i]['number_1c'].     ";".$data_cor[$i]['date_request'].      ";".$data_cor[$i]['number_request'].";"
                .$data_cor[$i]['contractor'].      ";".$data_cor[$i]['contractor_doc'].";".$data_cor[$i]['general_request_id'].";".$data_cor[$i]['date_dispatch'].";"
                .$data_cor[$i]['type_dispatch'].   ";".$data_cor[$i]['g_contactor_id'].";".$data_cor[$i]['address'].           ";"
                .$data_cor[$i]['station_name'].    ";".$data_cor[$i]['station_code'].  ";".$data_cor[$i]['status'].            ";"
                .$data_cor[$i]['transport_id'].    ";".$data_cor[$i]['contact_person'].";".$data_cor[$i]['phone_number'].      ";"
                .$data_cor[$i]['station_guid'].    ";".$data_cor[$i]['guid_cont_4'].   ";".$data_cor[$i]['transport_type'].    ";"
                .$data_cor[$i]['trailer'].         ";".$data_cor[$i]['driver'].        ";".$data_cor[$i]['driver_reserve'].    ";"
    			.$data_cor[$i]['address_delivery'].";".$data_cor[$i]['comment'];
    
    
    			$d .= "\r\n";
              
          if(count($data_cor['products']>0))
          {
            $d .= "#Товары\r\n";
            foreach($data_cor[$i]['products'] as $p)
              $d .= $p['guid'].";".$p['ob'].";".$p['get'].";".$p['doc_guid']."\r\n";
            
            $d .= "#Состояния\r\n";
            foreach($data_cor[$i]['statuses'] as $s)
              $d .= $s['status'].";".$s['date'].";".$s['user'].";".$s['type'].";".$s['guid']."\r\n";
          }
        }
      }

    CSV заказывали?
    Ах да, выгружаться могут разные данные, поэтому рядом лежат еще 4 говнофункции, отличающихся от этой только ключами массива.

    clauclauclau, 22 Января 2013

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