Skip to main content

C Programming Language



C programming language is a structured programming language, developed by Dennis Ritchie at Bell Laboratories in 1972.
It has been written in assembly language, belonging to middle level programming language.
It’s features were derived from an earlier language called “B” (Basic Combined Programming Language – BCPL).
C language was invented for implementing UNIX operating system.
In 1978, Dennis Ritchie and Brian Kernighan published the first edition “The C Programming Language” and commonly known as K&R C.
In 1983, the American National Standards Institute (ANSI) established a committee to provide a modern, comprehensive definition of C.  The resulting definition, the ANSI standard, or “ANSI C”, was completed late 1988.
This  language is used for developing system applications that forms a major portion of operating systems such as Windows, UNIX and Linux.


Some of the features of C language :-
·         Reliability
·         Portability
·         Flexibility
·         Interactivity
·         Modularity
·         Efficiency and Effectiveness


Development of Unix System

The PDP-11 version of Unix system was written in assembly language. Assembly languages are low-level programming languages that are specific to a particular computer architecture. They are hard to write and understand.
The developers of Unix Operating system (including Dennis Ritchie and Stephen C. Johnson) decided to rewrite the system in B language. However, B couldn’t suffice some of the features of PDP-11, which led to the development of C.
In 1972, the development of C started on the PDP-11 Unix system and first appeared in Version 2 Unix. A large part of Unix was then rewritten in C  and the compiler for the Honeywell 6000 was written within the first year of C's history. By 1973, C was powerful enough to be used in Unix Kernel. Dennis Ritchie and Stephen C. Johnson made further changes to the language for several years to make it portable in Unix Operating system.
ANSI C

With the rapid growth of C language, it was necessary to be standardized. All the three standards given below are also known by the name of ANSI C  :-
C89 :-  The first standard of C was published by American National Standards Institute (ANSI) in 1989. This version is commonly popular as C89. C89 is supported by current C compilers, and most C code being written today is based on it.
C99 :-  In late 1990’s, several new features including inline functions, several new data types (including long, long int and a complex type to represent complex numbers), variable-length arrays and flexible array members, improved support for IEEE 754 floating point, support for variadic macros (macros of variable arity), and support for one-line comments beginning with //.
C11 :-  The C11 standard has new features like type generic macros, atomic operations, anonymous structures, multi-threading, and bounds-checked functions.
C18 :-  This standard is published in June 2018, C18 is the current standard for the C programming language. It introduces no new language features, only technical corrections and clarifications to defects in C11.
Applications of C language

·         Database systems
·         Graphics packages
·         Word processors
·         Spreadsheets
·         Operating system development
·         Compilers and Assemblers
·         Network drivers





Comments

Popular posts from this blog

Atanasoff - Berry Computer ( ABC )

The Atanasoff – Berry Computer (ABC)   was the first electronic computer, designed and built by Lowa State College Mathematics and Physics professor John Vincent Atanasoff and his assistant, Clifford E. Berry ( a graduate student) . They worked in the basement of the physics building at Lowa State College on the computer from 1939 until 1942 when it was abandoned due to World War II . Unfortunately, after being abandoned , it was neglected and eventually disassembled for parts. In 1994, a team from Lowa state University began to rebuild the computer, finishing it in 1997. The system weighed more than seven hundred pounds (320 kg). It contained approximately 1-mile (1.6 km) of wire, 280 dual-triode vacuum tubes, 31  thyratrons , and was about the size of a desk.  The idea behind the ABC were later used in the construction of the ENIAC, the world’s first general purpose computer. Purpose / Working ABC was designed only to solve systems of  l...

Integrated Injection Logic (I2L)

Integrated Injection Logic (I2L) was disclosed in 1972 at International Solid State Circuits Conference by C. M. Hart and A. Slob of Philips, The Netherlands, and by H. H. Berger and S. K. Wiedmann of IBM, West Germany simultaneously. The basic logic unit is a multiple output inverter which is physically realized as a conventional npn multi-emitter transistor operated in the inverse mode. Base drive to the npn inverters is supplied by multicollector lateral pnp current source transistors. The emitter of the pnp transistor is referred to as the injector, and a single injector distributes base drive to many npn logic units. The outputs of I2L units may be " wire AND " with outputs from other units for NAND implementation of logic functions. I2L is a bipolar LSI circuit technique which achieves high packing density and good power-delay efficiency using conventional bipolar processing. It uses the properties of ion implantation to achieve improved performance ca...

Nagware

Nagware is a software utility that adds users into upgrading or buying a premium version of software by sending constant pop-up messages or notifications.   It is a marketing tactic used by software developers in order to remind users to take advantage of special offers and purchase software. Nagware is also known as begware , annoyware , nagscreen and guiltware . It is built into commercial software that periodically prompts the user to register the product. Nagware is commonly used with  shareware  programs which have been downloaded for trial use. It keeps the message up for a certain time period, forcing the user to continue using the program.