Sockets, Shellcode, Porting & Coding: Reverse Engineering Exploits and Tool Coding for Security Professionals

C/C++

Dennis Ritchie of Bell Labs developed the C programming language in 1972. It has since become one of the primary languages used by professional programmers and is the primary language for the UNIX operating system. In 1980, Bjarne Stroustrup from Bell Labs began to incorporate object-oriented features into C, such as encapsulation and inheritance. While originally dubbed C with Classes, in 1983, the new language became known as C++. With a similar syntax to C s and the advantages of object-oriented programming, C++ quickly became popular.

Both C and C++ are extremely popular owing to their power and dominance as the preferred instructional languages at universities. While newer languages such as C# and Java are gaining in popularity, C and C++ programs and programmers will be needed for decades to come.

Language Characteristics

As compiled languages, high-level C and C++ code is unintelligible to a computer processor. A program called a compiler translates the high-level code into machine language, which a processor can then understand and execute. Unlike interpreted languages such as Java, there is no byte-code or middle-level language. C and C++ codes are compiled into instructions that are directly meaningful to the computer s CPU. Such a compilation has the disadvantage of platform dependence. Code must be specifically compiled for the system it will run on.

C

C is renowned for its power and simplicity. While C has a small number of keywords and reserved commands, it provides powerful functionality. The small number of keywords in...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Programming Languages
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.