Originally published on: Tue, 21 Apr 2009 23:51:27 +0000
Please note! If you're having difficulties compiling the C source code presented below, please see my post: Compiling C from the Command Line with Pelles C
I had written a little C program a while back for the 19th annual International Obfuscated C Coding contest.
Not only did my code not win ... it didn't even warrant an entry in the honorable mentions or anything like that. If you look at the winners and look back at my code, you'll immediately see why; the winners and the runners-up were much more creative than my effort.
Rather than get lost in obscurity, I felt that my entry needed to be published, so it has been given the honor of appearing in my first public blog post.
Everyone, please meet lawless.c ... a ROT-13 encoder/decoder that encodes/decodes one line at a time:
The rules for the 19th annual competition had noted that C preprocessor tricks might just as well not be used as each entry would be run through the preprocessor for expansion.
Here's what the above code would look like after preprocessing;
I tried to use preprocessor abuse to get my cutesy "I slit the sheet..." lines into view ... but the core of the processing was done via indirect invocation of entries in an array of function-pointers.
It was a fun exercise that I hope to revisit with more seriousness in the future.
Unless otherwise noted, all code and text entries are Copyright ©2009 by James K. Lawless
Views expressed in this blog are those of the author and do not necessary reflect those of the author's employer. Views expressed in the comments are those of the responding individual.

Save to StumbleUpon
Digg it
Save to Reddit
Share on Facebook
Share on Twitter
More bookmarks
Click **here**
A JavaScript REPL for Android Devices
A Review of Kevin Mitnick's Book Ghost in the Wires
Play MP3 Files with Python on Windows
A Simple Associative Array Library in C
A JavaScript REPL for Android Devices
Play MP3 Files with Python on Windows
An Interview with Brad Templeton
An Interview with Tom Zimmer: Forth System Developer
An Interview with the Creator of the BDS C Compiler
Why Some Web Sites will go Dark on Jan 18th
Book Review : Paull Allen - Idea Man
A 90's Experiment in Online Systems - The U.S. West CommunityLink Service