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

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    }
                               }
                            }
                         }
                      }
                   }
                }
             }
          }
       }

    Да, у нас есть и такое.

    nil, 01 Сентября 2010

    Комментарии (14)
  2. Си / Говнокод #4137

    +138

    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
    static const char*const nullp,From_[]=FROM,exflags[]=RECFLAGS,
     drcfile[]="Rcfile:",pmusage[]=PM_USAGE,*etcrc=ETCRC,
     misrecpt[]="Missing recipient\n",extrns[]="Extraneous ",ignrd[]=" ignored\n",
     pardir[]=chPARDIR,curdir[]={chCURDIR,'\0'},
     insufprivs[]="Insufficient privileges\n",
     attemptst[]="Attempt to fake stamp by";
    char*buf,*buf2,*loclock,*tolock;
    const char shell[]="SHELL",lockfile[]="LOCKFILE",newline[]="\n",binsh[]=BinSh,
     unexpeof[]="Unexpected EOL\n",*const*gargv,*const*restargv= &nullp,*sgetcp,
     pmrc[]=PROCMAILRC,*rcfile=pmrc,dirsep[]=DIRSEP,devnull[]=DevNull,
     lgname[]="LOGNAME",executing[]="Executing",oquote[]=" \"",cquote[]="\"\n",
     procmailn[]="procmail",whilstwfor[]=" whilst waiting for ",home[]="HOME",
     host[]="HOST",*defdeflock,*argv0="",errwwriting[]="Error while writing to",
     slogstr[]="%s \"%s\"",conflicting[]="Conflicting ",orgmail[]="ORGMAIL",
     exceededlb[]="Exceeded LINEBUF\n",pathtoolong[]=" path too long";
    char*Stdout;
    int retval=EX_CANTCREAT,retvl2=EXIT_SUCCESS,sh,pwait,lcking,rcstate,rc= -1,
     ignwerr,lexitcode=EXIT_SUCCESS,asgnlastf,accspooldir,crestarg,skiprc,
     savstdout,berkeley,mailfilter,erestrict;
    size_t linebuf=mx(DEFlinebuf+XTRAlinebuf,1024/*STRLEN(systm_mbox)<<1*/);
    volatile int nextexit;			       /* if termination is imminent */
    pid_t thepid;
    long filled,lastscore;	       /* the length of the mail, and the last score */
    char*themail,*thebody;			    /* the head and body of the mail */
    uid_t uid;
    gid_t gid,sgid;

    Источник: http://opensource.apple.com/source/procmail/procmail-1.2/procmail/src/procmail.c

    sanchousf, 31 Августа 2010

    Комментарии (32)
  3. Си / Говнокод #4098

    +139

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    #define MIN(i1, i2) (i1 < i2 ? i1 : i2)
    
    int mr_word_compare(const char* r1, int s1, const char* r2, int s2)
    {
        int l1 = strchr(r1, ' ') - r1;
        int l2 = strchr(r2, ' ') - r2;
        return strncmp(r1, r2, MIN(l1, l2));
    }

    пердложенный вариант исправления #4093 (http://govnokod.ru/4093)

    vayerx, 25 Августа 2010

    Комментарии (23)
  4. Си / Говнокод #4088

    +137

    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
    #include <stdio.h>
    
    #define template_pair_declare(x,y) \
    struct x##_##y##_pair \
    { \
        x first; \
        x second; \
    }
    
    #define template_pair(x,y) struct x##_##y##_pair
    
    #define template_mkpair_declare(x,y) \
    template_pair(x,y) mkpair_##x##_##y(x _first,y _second) \
    { \
        template_pair(x,y) res;res.first=_first;res.second=_second; \
        return res; \
    }
    
    #define template_mkpair(x,y) mkpair_##x##_##y
    
    template_pair_declare(int,int);
    template_pair_declare(float,float);
    
    int main()
    {
        template_pair(int,int) ip;
        scanf("%d%d",&ip.first,&ip.second);
        printf("Sum: %d\n",ip.first+ip.second);
        template_pair(float,float) fp;
        scanf("%f%f",&fp.first,&fp.second);
        printf("Sum: %f\n",fp.first+fp.second);
        return 0;
    }

    Шаблонные структуры и шаблонные функции для труЪ сишников.

    frp, 24 Августа 2010

    Комментарии (9)
  5. Си / Говнокод #4078

    +144

    1. 1
    2. 2
    //massiv[i]=C1^2*(a*i+b)+C2*(a^2*i-b)+(b-a*i)^-12.5; //почемуто не работает
                            massiv[i]=C1*C1*(a*i+b)+C2*(a*a*i-b)+1/((b-a*i)*(b-a*i)*(b-a*i)*(b-a*i)*(b-a*i)*(b-a*i)*(b-a*i)*(b-a*i)*(b-a*i)*(b-a*i)*(b-a*i)*(b-a*i)*sqrt(b-a*i));

    Нашёл проектик :)
    Универ. 1 курс. Лаба по С. Не работает - будем делать кал.
    Интересно, если бы степень была -125, то там было бы 125 умножений?

    XyHb, 23 Августа 2010

    Комментарии (4)
  6. Си / Говнокод #4063

    +143

    1. 1
    2. 2
    3. 3
    #include <stdio.h>
    amin()
    {

    такая вот незначительная опечатка.

    killer1804, 22 Августа 2010

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

    +144

    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
    #include <stdio.h>
    
    main()
    {
        char old[1000];
        char new[1000];
        int i;                      /*счетчик цикла длинны массива */
        int z;                      /*счетчик нового массива */
        int l;                      /*длинна массива */
        int c;                      /*член массива */
        l = 0;
        z = 0;
    
        printf
            ("программа удаления повторяющихся символов\n");
        printf
            ("введите последовательности символов, из которых нужно удалить повторяющиеся, по окончании вводна нажмите Ctrl+D \n");
    
    
        while ((c = getchar()) != EOF) {
            old[l] = c;
            l++;
        }
        old[l] = 0;
    
        printf
            ("Введите символ, который нужно удадить как повторяющийся\n");
        c = getchar();
    
    
        for (i = 0; i < l; i++) {
    
            if (old[i] != c) {
                new[z] = old[i];
                z++;
            } else if (old[i] == c && old[i + 1] != c) {    /*один символ из повторяющихся */
                new[z] = old[i];
                z++;
            }
    
        }
        new[z] = 0;
        printf("%s\n", new);
        printf("*end");
    }

    Сорри за флуд, но тут форматирование полутше.

    killer1804, 19 Августа 2010

    Комментарии (58)
  8. Си / Говнокод #4028

    +144

    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
    #include <stdio.h>
     
    main ()
    {
    char old[1000];
    char new[1000];
    int i; /*счетчик цикла длинны массива*/
    int z; /*счетчик нового массива*/
    int l; /*длинна массива*/
    int c; /*член массива*/
    l=0;
    z=0;
     
    printf("программа удаления повторяющихся символов\n");
    printf("введите последовательности символов, из которых нужно удалить повторяющиеся, по окончании вводна нажмите Ctrl+D \n");
     
     
    while((c=getchar()) != EOF)
    {
    old[l]=c;
    l++;
    }
    old[l]=0;
     
    printf("Введите символ, который нужно удадить как повторяющийся\n");
    c=getchar();
     
     
    for(i=0;i<l;i++)
    {
     
    if (old[i] != c)
    {
    new[z]=old[i];
    z++;
    }
    else
    if (old[i] == c  && old[i+1] !=c) /*один пробел*/
    {
    new[z]=old[i];
    z++;
    }
     
    }
    new[z]=0;
    printf("%s\n",new);

    Четвертый день изучаю СИ, три дня из них ушло на написание этой програмки :-D
    Шарики за ролики заехали, а потом наступил дзен и озарение.























    <a href=http://mobisvit.com/iphone-f003-p-17.html >РєРѕРїРёСЏ f003</a>

    killer1804, 19 Августа 2010

    Комментарии (3)
  9. Си / Говнокод #4018

    +135

    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
    #include <stdio.h>
    #include <stdlib.h>
     
    int main()
    {
       static int val = 1;
       while(val /* vanish */ --> 0)
       {
          (++ /* do black magic ! */  val) /* very black magic !!! */ ++;
          (val == 2 ? printf("WTF ??!") : val =- 1);
       }
     
       if(val<-15)
               return ((1<0?/* magic */100500:500?233?33?321?2223?0:0:0:0:0:0));
     
       return ((!!val==!!false)?val ==- 100500?5:1:main());
    }

    Из разряда синтаксиса языка

    ForEveR, 17 Августа 2010

    Комментарии (74)
  10. Си / Говнокод #3979

    +136

    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
    #include <stdio.h>
    
    #define declare_generic_func(x)\
    x add_##x(x x1,x x2) \
    {\
    	return x1+x2;\
    }
    #define generic_func(x,name) name##_##x
    
    declare_generic_func(int);
    declare_generic_func(double);
    
    int main()
    {
    	int a,b;
    	double ad,bd;
    	printf("Enter two integer numbers: ");
    	scanf("%d%d",&a,&b);
    	printf("Result: %d\n",generic_func(int,add)(a,b));
    	printf("Enter two real numbers: ");
    	scanf("%lf%lf",&ad,&bd);
    	printf("Result: %lf\n",generic_func(double,add)(ad,bd));
    	return 0;
    }

    Дженерики для труЪ сишников.

    frp, 14 Августа 2010

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