From 1a785f5cf029e68ac4c9a01d1fb4247331beaecf Mon Sep 17 00:00:00 2001 From: Cody Boone Ferguson <53008573+xexyl@users.noreply.github.com> Date: Sat, 6 May 2023 06:15:34 -0700 Subject: [PATCH] Add link and minor format update to 2012/zeitak --- 2012/zeitak/README.md | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/2012/zeitak/README.md b/2012/zeitak/README.md index cd1188201..b44c8ba3b 100644 --- a/2012/zeitak/README.md +++ b/2012/zeitak/README.md @@ -78,26 +78,26 @@ around it's position. printf(")"); -* Doesn't get confused by the [1984/anonymous](/1984/anonymous/anonymous.c) entry! +* Doesn't get confused by the [1984/anonymous](/1984/anonymous/anonymous.c) entry! #### Mis-Features -* Escapes (e.g. `\"`) are ignored, so the following line will produce - an error: +* Escapes (e.g. `\"`) are ignored, so the following line will produce + an error: printf("\""); #### Obfuscation -IOCCC winners already contain entries without digits, control-flow +[IOCCC winners](/years.html) already contain entries without digits, control-flow keywords and certain operators in their source. This entry has an even more limited source, that is: -* Without any digits. -* Without any character constants. -* Without using functions from headers other than stdio. -* Without any control-flow keywords (not even the `?:` operator). -* Without any arithmetic or logic operators! +* Without any digits. +* Without any character constants. +* Without using functions from headers other than stdio. +* Without any control-flow keywords (not even the `?:` operator). +* Without any arithmetic or logic operators! So, what's left? Parenthesis, and lots of them, as looking at the source will reveal immediately. The main obfuscation is building the whole algorithm using @@ -105,20 +105,20 @@ only function calls, typecasts, array lookups and pointer operators. ##### Additional obfuscations include: -* Extensive reuse of identifiers: Macros share names with variables, inner - curly braces scopes contain variables with names identical to those in the - outer scopes and some of the variables have different uses in different - parts of the program. Even the large array has more than one use. -* A complicated data structure with "unused" fields. -* Mostly one-letter identifiers. -* Complex recursion: A function might call itself once, twice, or not at all. +* Extensive reuse of identifiers: Macros share names with variables, inner + curly braces scopes contain variables with names identical to those in the + outer scopes and some of the variables have different uses in different + parts of the program. Even the large array has more than one use. +* A complicated data structure with "unused" fields. +* Mostly one-letter identifiers. +* Complex recursion: A function might call itself once, twice, or not at all. #### Compilation/Portability/Running Notes -* The program requires `char` to be one byte and pointers to be - at least two bytes long. +* The program requires `char` to be one byte and pointers to be + at least two bytes long. -* The program was tested on the following platforms: +* The program was tested on the following platforms: - Ubuntu 9.04 32-bit with GCC - Windows 7 32-bit with GCC - Windows 7 32-bit with OpenWatcom