Systemnahe Programmierung in Chome Systemnahe Programmierung in C: Obfuscated C Prof. Dr. Uwe Schmidt FH Wedel

Obfuscated C

weiter

weiter

Indizierter Zugriff entspricht Zeigerarithmetik
Beispiel: verrueckt.c

   1/* verrueckt aber wahr */
   2
   3int
   4f (int i)
   5{
   6  int a[5] = { 0, 1, 1, 2, 3 };
   7
   8  return i[a];
   9}
weiter

weiter

Übersetzen

cc -c -Wall verrueckt.c

weiter

weiter

Konversion: Zahl --> Zeichen
Beispiel: digitToChar.c

   1char
   2digitToChar (int i)
   3{
   4  return i["0123456789"];
   5}
   6
   7char
   8digitToChar2 (int i)
   9{
  10    return *(i + "0123456789");
  11}
weiter

weiter

Übersetzen

cc -c -Wall digitToChar.c

weiter

Letzte Änderung: 22.12.2016
© Prof. Dr. Uwe Schmidt
Prof. Dr. Uwe Schmidt FH Wedel