The programming language C was originally developed by Dennis Ritchie of Bell Laboratories.
C Language was designed to run on a PDP-11 with a UNIX operating system. Although C language was originally intended to run under UNIX, there has been a great interest in running it under the MS-DOSoperating system on the IBM PC and compatibles. C programming language is an excellent language for this environment because of the simplicity of expression, the compactness of the code, and the wide range of applicability. Also, due to the simplicity and ease of writing a C compiler, it is usually the first high level language available on any new computer, including microcomputers, minicomputers, and mainframes. C programming language is specifically created in order to allow the programmer access to almost all of the machine’s internals – registers, I/O slots and absolute addresses. However, at the same time, C language allows for as much data hiding and programme text modularisation as is needed to allow very complex multi-programmer projects to be constructed in an organised and timely fashion. During the early 1960s computer Operating Systems started to become very much more complex with the introduction of multi-terminal and multi-process capabilities.
Prior to this time Operating Systems had been carefully and laboriously crafted using assembler codes, and many programming teams realised that in order to have a working o/s in anything like a reasonable time this was now longer economically feasible.C is not the best beginning language because it is somewhat cryptic in nature. It allows the programmer a wide range of operations from high level down to a very low level, approaching the level of assembly language. There seems to be no limit to the flexibility available. Where we can use C?Virtually there is no limit on what you do with C. But, remember one thing, C is not everyones language. By “everyone”, I mean, C is not a language that is easy to bigin with, you may feel uncomfortable in the beginning.
C has rigid set of rules, C is not a forgiving language. But, when it comes speed and performance, C is far far ahead from it’s competitors & companions. C is an excellent language for developing applications where speed & performance comes before anything else. C programs has execution speed that is somewhat equal to assembly language, yet they are much easier to develope, debug and maintain.C is very useful for creating applications for embedded devices, hardware programming, device driver development, scientific applications, OS & Kernal development.
C is best suited for following types of applications:Hardware ProgrammingDevice DriversGame DevelopmentOperating System ModulesScientific ApplicationEmbedded Applications