By Jon S. Stumpf

May your signals all trap
    May your references be bounded
All memory aligned
    Floats to ints rounded

Remember …

Non-zero is true
    ++ adds one
Arrays start with zero
    and, NULL is for none

For octal, use zero
    0x means hex
= will set
    == means test

use -> for a pointer
    a dot if its not
? : is confusing
    use them a lot

a.out is your program
    there’s no U in foobar
and, char (*(*x())[])() is
    a function returning a pointer
    to an array of pointers to
    functions returning char

  • 7uWqKj@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    3 months ago

    This is older than many reading here … and C was already old when this was written.

      • dactylotheca@suppo.fiOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        3 months ago

        The Usenet post I linked to claims it’s originally from the 1st quarter of 1990, but who knows if that’s accurate or not. I actually can’t find a good source for whether Stumpf is the original author or just the one who posted it to rec.humor.funny.reruns, but it’s usually attributed to him at any rate.

        But yeah, fairly ancient by internet standards. I remember first running into it in the 90’s