C
From Encyclopedia Dramatica
C is a nerd language which is, like, totally ghey. It's low-level and has those stupid pointers. It was superseded by Java at least 100 years ago and is virtually extinct today. The only actively developed code using C today is the Linux kernel and the Yahoo! search engine, both of whose user count do not exceed 16, combined.
C code often ends up looking like the output of figlet(6). This is to be expected from a language that has three different uses for '*' depending on context.
C is for cookie, thats good enough for me.
Contents |
Examples of Normal C Code:
#include <stdio.h> #define PO(o,t)\ (((o>64)&&(o<91))?(((t>96)&&(t<123))?(t-32):(t)):(((t>64)&&(t<91))?(t+32):(t))) void main() { char *poo= "poot", *Poo="pootpoot" ,O[9];int o,t,T,p;(t=p =0)||(*O='\0');while ((o= getc( stdin ))!=( EOF))if ((p== 0)&& (((o>64 )&& ( o<91 )) || ((o> 96 ) &&(o< 123) ))) ( t!=8 )&&(O [t]= o)&& (O[++ t] = '\0') ;else {if (t>7) {for (T = 0 ; T <=7; T++ ) printf("%c", PO(*( O+T), *(Poo+ T))); printf ("%c", o);}else if (t>3){for (T =0;T<= 3;T++) printf ("%c", PO(*(O +T),*( poo+T) ) ) ; printf( "%c" , o ) ; } else printf ( "%s%c" , O , o ) ; ( t = 0 ) || ( * O = '\0' ) ; ( o == 60 ) && ( ++p ) ; ( o == 62 ) && (p!=0) && ( --p ) ; } }
#include <stdio.h> int main(int c,char**v) { char *s="B+p:ubYBGG0,|M3B=1*0N\n" "it's touring complete\n",*k[]={s+21,--s}; return c?({while(main(!k,k))putchar(**k^*k[1]-10);0;}):(v[1]++,*++*v); }
Obfuscation
Every year in The International de-Obfuscated C Code Contest sadistic C programmers spend hours deciphering normal C (as shown above) into code which, although performing exactly the same function, is easily understood by script-kiddies that use type-safe languages like Java, which were designed to allow idiots to be able to write computer programs, despite the mental disability which makes them unable to read or write C.
/* dlowe.c: (public domain) 1998 David Lowe <david pootpoot com> */ /* de-obfuscation: (public domain) 2006 Tom Vajzovic <vizaviza yahoo co uk > */ #include <stdlib.h> #include <stdio.h> #include <ctype.h> #define SWITCH_CASE(o,t) ( isupper(o) ? toupper(t) : tolower(t) ) int main( void ){ char *nonsense_short = "poot" ; char *nonsense_long = "pootpoot" ; char buffer[9] = "" ; unsigned int buffer_pos = 0 ; unsigned int chevron_depth = 0 ; unsigned int i ; int next_char ; while(1){ next_char= fgetc( stdin ); if( EOF == next_char ) exit( EXIT_SUCCESS ); if( !chevron_depth && isalpha( next_char ) ){ if( 8 != buffer_pos ){ buffer[ buffer_pos ]= next_char; if( next_char ){ ++buffer_pos; buffer[ buffer_pos ]= 0; } } } else { if( buffer_pos > 7 ){ for(i = 0; i < 8; ++i) fputc( SWITCH_CASE( buffer[i], nonsense_long[i] ), stdout ); fputc( next_char, stdout ); } else if( buffer_pos > 3 ){ for(i= 0; i < 4; ++i) fputc( SWITCH_CASE( buffer[i], nonsense_short[i] ), stdout ); fputc( next_char, stdout ); } else { fputs( buffer, stdout ); fputc( next_char, stdout ); } buffer_pos= 0; *buffer= 0; if( '<' == next_char ) ++chevron_depth; if( '>' == next_char && chevron_depth ) --chevron_depth; } } }
See? Much easier to read. Right?
Trolling Techniques
C programmers are butthurt over several issues that it is easy to start flame wars over:
- Vi/Vim versus emacs
- Indentation and bracketing style
- Choice of compiler or IDE
How to Win
1. Get a C compiler.
2. Create a new text file, change its type to ".c".
3. Type in:
void main() { int *p; p = 0; *p = 0; }
4. Compile it.
5. Execute it.
6. ????
7. Profit!!!
Successors
Microsoft decided to merge C++ efficiency and combine it with mistakes of java and create their own proprietary language. Since it's just a bastardized version of C++ and java they just decided to cock dock mangle the '++' in c++ and came out with C# (pronunciation: "See Hash-or-pound-sign-depending-on-if-you-are-a-limey-or-a-septic"). This is to confuse script kiddies to think C# isn't a shit language like Visual Basics. C# is basically VB.NET with curly braces and is intended as a means to impress potential employers who are well informed about programming languages. Microsoft then went on to produce J# (pronunciation: "G'zhey Hash-or-pound-sign-depending-on-if-you-are-a-limey-or-a-septic") which was also intended as a competitor to Java, thereby rendering C# useless and irrelevant to everyone.