1. C++ / Говнокод #17293

    +56

    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
    if(i%2==0)
    		{
    			for(j=int (l);j<n+int (l);j++)
    			{
    				A[i][j]=B1[k];
    				k++;
    			}	
    		}
    		else if(i%2!=0)
    		{
    			for(j=int (l);j<n+int (l);j++)
    			{
    				A[i][j]=B2[k];
    				k++;
    			}
    		}

    Когда-то один однокурсник спросил у препода:
    - А как добавить код в ИНАЧЕ от ИНАЧЕ.
    Что-то подобное увидел и в этом коде.

    Запостил: FalseCoder, 11 Декабря 2014

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

    • Типа перемножение матриц?
      Ответить
    • кроме очевидных глупостей,
      я бы имя l запретил
      Ответить
      • Кстати, а какие-нибудь тулзы ругаются на переменные l и I?
        Ответить
        • кажется, Idea позволяет задать регулярку для имен переменных\полей\методов
          Ответить
        • Можно как-то так (надеюсь, гццфаги набегут и предложат что-нибудь поинтереснее):
          // bad.c
          int main(){
            int l = 1;
            int I;
          }

          Выполняем gcc -D l -D I bad.c
          bad.c: In function 'main':
          <command-line>:0:3: error: expected identifier or '(' before numeric constant
          bad.c:2:7: note: in expansion of macro 'l'
             int l = 1;
                 ^
          <command-line>:0:3: error: expected identifier or '(' before numeric constant
          bad.c:3:7: note: in expansion of macro 'I'
             int I;
                 ^
          Ответить
          • #define l (!!!!!BAD VARIABLE NAME!!!!!)
            #define I (!!!!!BAD VARIABLE NAME!!!!!)
            Ответить

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