C (programming language)

From Citizendium
Revision as of 16:22, 25 April 2007 by imported>Pat Palmer (procedural implies imperative; rewording intro paragraph altogether)
Jump to navigation Jump to search

C is a general-purpose, procedural computer programming language developed in 1972 by Dennis M. Ritchie and Brian W. Kernighan at AT&T's Bell Laboratories for use with the Unix operating system[1]. The C programming language became successful and remains in use after more than thirty years; it has been implemented on many different computer platforms and has been standardized by ANSI and ISO. The syntax and scope rules of C greatly influenced many other popular languages, beginning with C++ (designed by Bjarne Stroustroup as an enhancement to C) and also including Java,Javascript and C sharp. As of 2007, versions of C (and its close cousin C++) are still used for writing stome operating system software, and C is still widely used for writing embedded software (programs for gadgets such as smart phones).

Syntax

Hello World

#include <stdio.h>

int main(void) {
   printf("Hello, world!\n");
   return 0;
}

Analysis of the example

The above Hello World program is probably the most widely recreated piece of software ever as it is used by many programming languages books and articles as a cursory introduction into a language's syntax. It was introduced in the book The C Programming Language[1].

#include <stdio.h> tells the precompiler to include the contents of the header file stdio.h, which declares standard input and output functions into the program before compiling.

int main(void) { tells the compiler that there is a function named main which expects no parameters (void) and will return a integer number to the caller (int). Due to a standard convention of the language, main is the first function called after the execution environment of the program has been set up. The opening curly brace following int main(void) denotes the beginning of the function.

printf("Hello, world!\n"); will make the program output Hello, world! and a new line (\n) on the screen. printf is itself a function similar to main but predefined in a library (libc) and linked into the program at compile time or runtime. The trailing semicolon is the end of statement marker in C.

return 0; defines the value to be returned from main and leaves the function back to its caller, some standard C startup code. After some additional cleanup that code will pass the 0 on to the operating system, to which it means 'success'.

} signals the end of the function definition to the compiler.

Derivatives

C has spawned many derivatives, including C++, Objective-C, and C#, which are commonly used in programming applications for Linux, Mac OS X, Windows and other operating systems.

References

  1. 1.0 1.1 Kernighan, B. and Ritchie, D.: The C Programming Language. Prentice Hall, 1978.
    • The original language definition before standardization.

See also

External links