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

    0

    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
    /*
     * Returns 1 if filename has .zip extension.
     */
    static int
    str_zipext(char *name)
    {
    	int i;
    
    	i = strlen(name) - 1;
    	if (i < 0 || name[i] != 'p' && name[i] != 'P') return 0;
    	i--;
    	if (i < 0 || name[i] != 'i' && name[i] != 'I') return 0;
    	i--;
    	if (i < 0 || name[i] != 'z' && name[i] != 'Z') return 0;
    	i--;
    	if (i < 0 || name[i] != '.') return 0;
    	i--;
    	if (i < 0) return 0;
    	return 1;
    }

    https://github.com/fabiensanglard/xrick/blob/239d213f01be8d0086c449080ce61bde8dcad7b4/src/data.c#L189

    Запостил: j123123, 25 Января 2018

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

    • Я медленно, буква за буквой, проверяю твое расширение...
      Ответить
    • if (i < 0 || name[i] != 'p' && name[i] != 'P') return 0;
      i--;
      if (i < 0 || name[i] != 'i' && name[i] != 'I') return 0;
      i--;
      if (i < 0 || name[i] != 'z' && name[i] != 'Z') return 0;
      i--;
      if (i < 0 || name[i] != 'd' && name[i] != 'D') return 0;
      i--;
      if (i < 0 || name[i] != 'a' && name[i] != 'A') return 0;
      Ответить
    • Царский анролл.
      Ответить
    • Не говно - это беда современного поколения и языка Си, когда толком программировать не научили но вместе с тем такому инвалиду не дали хорошего фраймверка, чтоб от-туды экспортить можно было. Ну не виноват BigOrno в том что Си не комплектуется штатно хорошей библиотекой для работы с файловой системой - ему бы питончика или руби какого, где есть спецфункции для такого дела - нельзя обвинять таких.
      Ответить

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