|
Other C Languages
C is a general-purpose, procedural, imperative computer programming language developed in 1972 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system. more...
Home
Cables, Connectors
Filers, Load Balancers
Home Networking, Cable & DSL
Hubs
KVM Switch Boxes, Cables
Mainframe, DEC, VAX, AS/400
Network Interface Cards,...
Networking, Telecom Tools
Other Networking Equipment
Print Servers, Wired
Racks, Mounts & Patch Panels
Router Components, Memory
Routers, Wired
Security, Firewall, VPN
Server Components, Memory
Servers
Software
Antivirus, Security,...
Apple, Macintosh Software
Business & Productivity
Database & Development Tools
C Languages
Borland
Macromedia
Microsoft
MS Other
MS Visual Basic
MS Visual C#
MS Visual C++
MS Visual Studio
Other C Languages
Databases
IBM
Microsoft
MS Access
MS SQL Server
Oracle
Other Databases
Other MS
Java
Borland
Macromedia
Microsoft
Other
Other Database & Development
Perl
Training & Reference
C Languages
Databases
Java
Other Training
Web Development Tools
Adobe
Macromedia
Microsoft
Other Web Development
Digital Music & Video...
Downloadable Software
Education & Reference
Games & Entertainment
Graphics, Photo & Publishing
Handheld Software
Internet Related Utilities
Kids' Software
Networking
Operating Systems
Other Software
Wholesale Lots
Software, Operating Systems
Storage Equipment, NAS, SAN
Switch Components, Memory
Switches
Telephone Systems, Telecom
UPS, Power Protection, APC
Wholesale Lots
Wireless Networking, WiFi
Workstation Components,...
Workstations, Terminals
It has since spread to many other operating systems, and is now one of the most widely used programming languages. C has also greatly influenced many other popular languages, especially C++, which was originally designed as an enhancement to C. It is the most commonly used programming language for writing system software, though it is also widely used for writing applications.
Philosophy
C is a minimalistic programming language. Among its design goals were that it could be compiled in a straightforward manner using a relatively simple compiler, provide low-level access to memory, generate only a few machine language instructions for each of its core language elements, and not require extensive run-time support. As a result, C code is suitable for many systems-programming applications that had traditionally been implemented in assembly language.
Despite its low-level capabilities, the language was designed to encourage machine-independent programming. A standards-compliant and portably written C program can be compiled for a very wide variety of computer platforms and operating systems with minimal change to its source code. The language has become available on a very wide range of platforms, from embedded microcontrollers to supercomputers.
Characteristics
As an ALGOL-based language, C has the following characteristics:
A procedural programming paradigm, with facilities for structured programming;
Lexical variable scope and recursion;
A static type system which prevents many meaningless operations;
Function parameters are generally passed by value (pass-by-reference is achieved in C by explicitly passing pointer values);
Heterogeneous aggregate data types (struct in C) which allow related data elements to be combined and manipulated as a unit;
A small set (around 30) of reserved keywords;
C also has the following specific properties:
Weak typing — for instance, characters can be used as integers (similar to assembly);
Low-level access to computer memory via machine addresses and typed pointers;
Function pointers allow for a rudimentary form of closures and runtime polymorphism;
Array indexing as a secondary notion, defined in terms of pointer arithmetic;
A standardized C preprocessor for macro definition, source code file inclusion, conditional compilation, etc.;
A simple, small core language, with functionality such as mathematical functions and file handling provided by library routines;
C discarded the well established logical connectives and and or of most other ALGOL derivatives and replaced them with && and ||, which
Were invented in order to make bit-wise operations (& and |) syntactically distinct — C's predecessor B used & and | for both meanings;
Never evaluate the right operand if the result can be determined from the left alone (Minimal evaluation);
Read more at Wikipedia.org
|
|