• csm10495@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    20
    ·
    14 hours ago

    Through the magic of make, you can write code that changes if statements to while loops then changes it back after compilation passes or fails.

    I only give good advice.

    • aMockTie@lemmy.world
      link
      fedilink
      arrow-up
      37
      ·
      19 hours ago

      Statements that start with # in C/C++ are known as preprocessor directives, that is, they are executed before compilation begins. OP has used a #define which will replace any instance of A (IF(x)) with B (while (x)) in the code.

      So the IF statement is really just a while statement.

          • ulterno@programming.dev
            link
            fedilink
            English
            arrow-up
            2
            ·
            7 hours ago

            I always wondered why I always had a hard time making developers not call “if” a “loop”.
            Turns out it was on their tests.

            Glad I didn’t read my college material, or I would have lost faith in my college professors.

          • NigelFrobisher@aussie.zone
            link
            fedilink
            arrow-up
            4
            ·
            17 hours ago

            It just occurred to that in Yorkshire dialect a while loop would actually be an until loop. Directives to the rescue!

        • kyubOP
          link
          fedilink
          English
          arrow-up
          10
          ·
          18 hours ago

          “Infamous” just refers to newbies who sometimes call if statements “if loops”. I’ve heard this quite a bit.

        • AliasVortex@lemmy.world
          link
          fedilink
          English
          arrow-up
          3
          arrow-down
          2
          ·
          19 hours ago

          Infamous because the condition is 1 (or true), the loop never actually exits because it’s always true

    • Reil@beehaw.org
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      17 hours ago

      They used a macro to make ‘IF’ (which is distinctly not ‘if’) map to ‘while’. So it’s really a while(1) loop, which will repeat forever, or until the program is terminated, whichever comes first.

      Someone’s just being silly.

      • LeFrog
        link
        fedilink
        arrow-up
        1
        ·
        8 hours ago

        Thx!

        ‘IF’ (which is distinctly not ‘if’)

        Is this something needed “for the meme” or something with this macro or C/C++? Or why the case-sensitivity here? I only know languages like Java, Python, JS. Unfortunately the ancient tongue is not known to me.

  • Tamlyn@lemmy.zip
    link
    fedilink
    arrow-up
    6
    ·
    18 hours ago

    i have a colleague always saying if loop (in our language). I’m a bit to shy to tell him his mistakes… People easily hate me but i would like to…