What makes C so special that it has become the number one all-purpose programming language on this planet? It's a number of factors, really.

  • One can easily memorise all of C's functionality. You won't see many productive C++ or Perl programmers without a copy of the ARM resp. the Camel Book. But once you know C, a reference is hardly necessary. You can keep it all in your head.
  • There are free and/or commercial C implementations for nearly all known platforms.
  • You can do everything in C, where nothing is really easy to do, but nothing is really hard. Compare that to BASIC where everything is easy, but you can't really do all that much.
  • C is all lower case. That rules.
  • C has got grillions of function libraries thoughtful men have written to enable you to live a lazier programmer's life.
  • C is very well-standardised.
  • C is not overly strict, but does a reasonable amount of type checking and such.
  • C can be used for immensely complex, super-high-level stuff because it provides very flexible data structures.
  • C can be used to program on the bare metal since it's got bit-wise operators, pointer arithmetics and other sick stuff.

Use C! It's good! But try other languages first.