C is a high level programming language designed by
Brian Kerningham of Bell Labs. It was designed to replace the B programming
language also made by someone from Bell Labs. Somehow one can't help but
wonder where these programmers come up with names for their products.
A high level programming language is a language
that resembles English (e.g. C and Java). A low level language on the other
hand is a language that is very different from English (e.g. ASM) and is
very hard to understand. The reason high level languages were created was
to simplify the process of programming thus making programmers more productive.
The advantages of C are:-
Here's a typical example. Let's take a command in
English. As an example, if you expect that you'd be busy at work and might
be home late, you'd certainly want to tell your wife not to wait and
to have dinner without you, so you'd probably say "Dear, I'll probably
be late from work today so you go on and have dinner if I'm not home by
5:00 p.m.". In C however, the command would be something like this
if ( time= = 5:00 p.m.)
if(husband != home)
{
have dinner without husband;
}
else(husband = = home)
{
have dinner with husband;
}
else
{
wait some more;
}
What you saw above is an example of how you'd communicate
in a high level programming language. If you were using a low level language
like machine language, things would be a lot more complicated 'cos you'd
be using binary code (e.g. 11010101, 101011001 and the like).
As with all high level languages, C requires a compiler. The job of the compiler is to transform the stuff that you type , which is called source code into machine understandable code. If you don't already have a compiler, a very good compiler is available at http://www.delorie.com/djgpp that is free for download.
ANSI C
So what is this ANSI C anyway? Some new language?
Well, for years the K&R C which is based on the book The C Programming
Language by Brian Kerningham and Dennis Ritchie was the de-facto standard
for C programming. However, after some time, vendors of C compilers started
using their own versions of C. This is terrible because it would jeopardize
one of C's important advantages which is portability. So the ANSI (American
National Standards Institute) came up with a standardised version of C.
So, now all ANSI compliant compilers support the ANSI keywords and occasionally,
spice up the C language with their own additional keywords (e.g. the getch()
function that is not in the ANSI standard but implemented in Microsoft's
and Borland's compiler).
Well, that's about all you need to know about the history of C.