Няшная / Говнокод #802 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
Xgetc(fp); /* the extension code */
	for ( i = Xgetc(fp); i > 0; i-- ) Xgetc(fp);
	while ( ( i = Xgetc(fp) ) > 0 ) {
	  for ( i = i ; i > 0; i-- ) Xgetc(fp);
	}

Кусок из whirlgif - whirlgif.c

* This program reads in a sequence of single-image Gif format files and
* outputs a single multi-image Gif file, suitable for use as an animation.

Поубивал бы!

guest guest, (Updated )

Комментарии (9, +9)

Няшная / Говнокод #798 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
case MOTO_ACCY_IOCTL_SET_CHARGER_LOAD_LINE:
            /* Copy the load line setting from user space */
            retval = copy_from_user ((void *)&data, (void *)arg, sizeof(data));

            /* If the copy failed, return an error */
            if (retval != 0)
            {
                retval = -EFAULT;
            }

            /* Else, configure the hardware for the requested load line setting */
            else
            {
                /* Acquire the lock to prevent changes to connected_accessories */
                spin_lock (&connected_lock);

                /* Verify that the 3G fast charger is connected */
                if (ACCY_BITMASK_ISSET(connected_accessories, MOTO_ACCY_TYPE_CHARGER_FAST_3G))
                {
                    /* This charger is the only charger that supports an adjustable load line */

                    /* TBD */
                }

                /* Else, the appropriate charger type is not connected */
                else
                {
                    /* Return error: No such device */
                    retval = -ENODEV;
                }

                /* Release the lock for connected_accessories */
                spin_unlock (&connected_lock);
            }

            break;

guest guest, (Updated )

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

Няшная / Говнокод #797 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
индокод:
#ifdef PRINT_DEBUG_INFO
#define DBG_PRINT if(1) printf
#else
#define DBG_PRINT if(0) printf
#endif

Индокод - макрос для вкл-выкл дебажной печати.

guest guest, (Updated )

Комментарии (11, +11)

Няшная / Говнокод #782 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
if(strncmp(I_CUR->E98,"",sizeof("")-1) != 0)
{
    /** Fehler **/
    ret=create_error(1,1,"",NULL,NULL);
    set_error_msgseg(-1,-1,"CUR",NULL," E98",-1);
    if (ret==FEHLER)
        return ret;
}

Генератор сорса для одного проекта в очень крупной конторе дает такой код, который должен сообщать об ошибке.

Долго я удивлялся, что ошибок не появляется
if(0 != 0)

guest guest, (Updated )

Комментарии (4, +4)

Няшная / Говнокод #761 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
/* {{{ proto mixed array_reduce(array input, mixed callback [, int initial])
   Iteratively reduce the array to a single value via the callback. */
...

        if (ZEND_NUM_ARGS() > 2) {
                ALLOC_ZVAL(result);
                *result = **initial;
                zval_copy_ctor(result);
                convert_to_long(result); // SIC!
                INIT_PZVAL(result);
        }
...

Исходники PHP, array_reduce.

Обнаружил http://antilamer.livejournal.com/269560.html

guest guest, (Updated )

Комментарии (1, +1)

Няшная / Говнокод #665 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
#include <stdio.h>
#include <string.h>
#define icon_no -

const char ICON_DEF[]     = ".png";
const char ICON_NO[]      = "-";
int main(int argc, char * argv[] ) {
	char result[128];
	char string[128];
	strcpy(string,ICON_DEF);
	char * ext_pnt = strrchr(string,'.');
	if(!ext_pnt)
		return 1;

	char * ext = &ext_pnt[1];
	int i;
	printf("ext=%s\n",ext);
	for ( i = 1; i< argc ; i++ ) {
		char * arg = argv[i];
		int extlen = strlen(ext);
		if( strncmp(ext,arg,extlen) == 0 ) {
			strcpy(result,&arg[extlen+1]);
		} else {
			strcpy(result,ICON_NO);
			strcat(result,ext_pnt);
		}
		printf("arg[%d]=%s, result: %s\n", i, arg, result);
	}


  return 0;
}

guest guest, (Updated )

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

Няшная / Говнокод #659 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
//заполнение рандомными числами двух первых массивов и вывод их на экран:
for (i=0;i<n;i++){
for (j=0;j<m;j++){
	randomize();
	A[i][j]=random(100)-50;
	printf("A[%d][%d]:",i,j);
	printf("%d",A[i][j]);
}}
for (i1=0;i1<n1;i1++){
for (j1=0;j1<m1;j1++){
	randomize();
	B[i1][j1]=random(100)-50;
	printf("B[%d][%d]:",i1,j1);
	printf("%d",B[i1][j1]);
}}
//сложение матриц:
for (i=0;i<n;i++){
for (j=0;j<m;j++){
for (i1=0;i1<n1;i1++){
for (j1=0;j1<m1;j1++){
	C[i2][j2]=A[i][j]+B[i1][j1]
}}}}
//а описание одних только счетчиков выглядит так:
int i,j,i1,j1,i2,j2,i3,j3,i4,j4,is,js,ir,jr;

Восстановлено по памяти из незаконченной лабы одной программистки-первокурсницы

guest guest, (Updated )

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

Няшная / Говнокод #601 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
#include<stdio.h>
int main(void)
{
	int a=10000,b=0,c=2800,d,e=0,f[2801],g;FILE *fo;
	if (!(fo=fopen("C:\\out","w"))) return 1;
	for (;b-c;) f[b++]=a/5;
	for(;d=0,g=c*2;c-=14,fprintf(fo,"%.4d",e+d/a),e=d%a)
		for(b=c;d+=f[b]*a, f[b]=d%--g,d/=g--,--b;d*=b);
}

число пи

guest guest, (Updated )

Комментарии (5, +5)