The C Programming Language
71C is a popular computer programming language, much loved by programmers for its speed, power and compactness. Though originally designed for developing operating systems and engineering applications, C is equally effective for writing general-purpose software and business applications.
C was invented by Dennis Ritchie and was first implemented on the UNIX operating system. It was called C because there already existed a programming language B, from which C has borrowed many features.
C gives the programmer more insight into the way the computer actually works. C has many advanced features, for example, you can control individual bits of data in the computer's memory. C is not a big language as it was designed to have the barest minimum of the features required to manipulate the computer. Because of this, C is easy to learn.
C provides the fundamental control-flow constructions and a rich set of operators, both arithmetic and logical. It has several data types to store different types of data such as integers, decimal numbers, alphabets and computer memory addresses. It has built in data structures like arrays, structures and unions. Many of these features are directly supported by the computer hardware. This means programmes written in C execute very fast.
C is sometimes called a "low-level high-level language". In computer jargon, low-level refers to languages that go through every step of what the computer hardware does. These languages are very powerful but difficult to learn and use. High-level languages are farther from how the computer actually works; they are designed to fit in with the way people think rather than with the way computers operate. C has some of the advantages of both; it is low-level in the sense that it works more like the computer than most high-level languages do, and it is high-level in the sense that its programme structure is easy to follow.
C is a compiled language, that is, programmes written in C need a special software called a compiler to convert them into a form that computers can understand. Much of the speed of C comes from it being a compiled language. In compiled languages, the entire programme is converted by the compiler at one go, and then transferred to the hardware. This way the hardware can start executing the instructions of the programme in quick succession.
Early programming languages like BASIC, COBOL and FORTRAN never anticipated the phenomenal expansion of computers and the varied uses to which computers would be put to. They were designed for writing small programmes that handled relatively simple problems. When programmes became large and complex, these languages could not handle the complexity. Large programmes written in these languages became extremely difficult to read and maintain.
It was to deal with this situation that computer scientists and language designers came up with the concept of structured programming in which certain basic principles are followed while writing programmes. The chief among these principles is to break large, complex problems into smaller, more compact units and then link them together in a logical sequence. This way the complexity of the problem is reduced and made manageable.
C is one of the first languages to adopt this programming philosophy. C has many built in features that compel programmers to follow structured programming. Because of this, programmes written in C are compact, smaller and easier to follow.
Despite all these powerful features, C does have a few drawbacks. Since the designers meant C to be a lean and tough language, it does not have many frequently used features, for example, a mechanism for input and output. Programmers are expected to write their own programmes for doing these. As computers became more and more powerful and began to be used in more and more challenging situations, even the awesome power of C has begun to prove inadequate. Structured programming served well up to a point, but beyond that an entirely new paradigm was required. Soon object oriented programming (OOP) emerged as the new mantra of computer professionals. In OOP the problem is viewed as a collection of objects which interact among themselves in clearly specified ways. Programmers try to capture the functions and features of these objects in their code. Although object oriented programmes can be written in C, the C language does not intrinsically support OOP.
Despite these limitations, it would be incorrect to say that C has lost its relevance in modern times. The best testimony of C's continued utility is the fact that it is avidly taught and learned in most institutions offering courses in computer science.
To know how a typical C programme looks, see the box on this page.
A typical C programme
#include <stdio.h>
main ()
{
printf (“Hello world!”);
return (0);
}
When complied and run, this programme will print “Hello world!” on the computer screen.
PrintShare it! — Rate it: up down flag this hub
Comments
Thank you shibashake. I am happy that you liked this hub.
great hub ,
if i want to build an appliction for web based ,
than what programming language should i use ,
& can you write a hub on that ,
i am only the begginer in this field.
thank you.
shreekrishna: That is not an easy question. There are so many competing technologies available to do this that it will be a difficult choice. It will all depend on how complex a web application you want to build.
A basic one can be built using mysql and php. XML is another possibility.
Usaully it will be a combination of several technologies.
Unfortunately, I am not that much into web application design to be able to comment authoritatively on this subject.
And it will require much more than a hub to fully explain all the intricacies of building a web application.
Let us see if any other hubber who has the requisite knowledge attempts a hub like this.
I, for myself, am completely out of my depths here.
|
|
The C Programming Language by Brian W. Kernighan (19...
Current Bid: $34.99
|
|
|
The C Programming Language by Brian W. Kernighan
Current Bid: $.99
|
|
|
The C Programming Language (2nd International Edition)
Current Bid: $59.99
|
|
|
NEW The C++ Programming Language - Bjarne Stroustrup
Current Bid: $72.65
|
|
C Programming Language (2nd Edition)
Price: $38.85
List Price: $60.33 |
|
Programming Language Pragmatics, Third Edition
Price: $49.16
List Price: $74.95 |
|
The C++ Programming Language: Special Edition
Price: $40.00
List Price: $84.99 |
|
Java(TM) Programming Language, The (4th Edition)
Price: $34.98
List Price: $64.99 |











shibashake says:
8 months ago
Excellent hub. We always discuss the history of spoken and written languages, but I rarely ever see a history of computer languages. You wrote it in a style that provides a lot of information and is easy to understand even for non-technical people. Bravo!