• aMockTie@lemmy.world
    link
    fedilink
    arrow-up
    39
    ·
    1 day 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
          5
          ·
          14 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
          ·
          24 hours ago

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

      • kyub@discuss.tchncs.deOP
        link
        fedilink
        English
        arrow-up
        10
        ·
        1 day 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
        ·
        1 day ago

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