C is often used for "system programming", including implementing operating systems and embedded system applications, due to a combination of desirable characteristics such as code portability and efficiency, ability to access specific hardware addresses, ability to "pun" types to match externally imposed data access requirements, and low runtime demand on system resources. C can also be used for website programming using CGI as a "gateway" for information between the Web application, the server, and the browser. Some factors to choose C over Interpreted languages are its speed, stability and less susceptibility to changes in operating environments due to its compiled nature.
One consequence of C's wide acceptance and efficiency is that compilers, libraries, and interpreters of other programming languages are often implemented in C. For example, many Eiffel compilers output C source code as an intermediate language, to submit to a C compiler. The primary implementations of Python (CPython), Perl 5, and PHP are all written in C.
C is efficient for numeric and scientific computing, due to its low overhead, low-level nature of the language, compiled nature of the language, and availability of a decent math section in the C standard library. Examples of C usage in numeric and scientific computing include GMP, GNU Scientific Library, Mathematica, MATLAB, and SAS.
C is sometimes used as an intermediate language by implementations of other languages. This approach may be used for portability or convenience; by using C as an intermediate language, it is not necessary to develop machine-specific code generators. Some compilers which use C this way are BitC, Gambit, the Glasgow Haskell Compiler, Squeak, and Vala. However, C was designed as a programming language, not as a compiler target language, and is thus less than ideal for use as an intermediate language. This has led to development of C-based intermediate languages such as C++.
C has also been widely used to implement end-user applications, but much of that development has shifted to other languages that have come along, such as C++, C# and Visual Basic.
>>To download The C Programming Language (Second Edition ) by BRAIN W.KERNIGHAN & DENNIS M.RICTHIE:
download: http://mediafire.com/?5yew1jn2z4r
No comments:
Post a Comment