IOCCC image by Matt Zucker

The International Obfuscated C Code Contest

1998/bas2 - Best Small Program

← bas1 ↑ 1998 ↑ chaos → C code Makefile Inventory





Author:

To build:

make all

To use:

./bas2 < file
echo text | ./bas2

Try:

./try.sh

./try.sh "foo bar" "baz" "IOCCC 1998/bas2" README.md

./try.sh try.sh "bas2.c" bas2.orig.c

Judges’ remarks:

Questions to ponder:

Can you determine the relationship between the input and the resulting numeric output?

The program was not designed to process files with a certain octet value, what value is that?

Hint and Extra Credit:

This entry points out a minor flaw in the IOCCC rules that has been around since 1992. It processes a certain octet value in a way that differs from a strict reading of one of the official IOCCC rules. What is the rule and what is the octet value?

Author’s remarks:

The main obfuscation is the way characters are recognized, which is done by matching the bit patterns. Minor obfuscations are:

Inventory for 1998/bas2

Jump to top

Primary files

Secondary files