Computer technology has evolved at an amazing rate during the last few decades. Today a laptop computer can compute faster and store more information than a whole computer system (called mainframe computers) of forty years ago. According to Harvey Deitel and Paul Deitel from Nova University, "A person operating a desk calculator might require decades to complete the same number of calculations a powerful computer can perform in one second" (5). Along with that revolution, computer languages have evolved, too. A language created in the early 1970s by Dennis Ritchie called C quickly became very helpful and popular because of its features. In 1983 Bjarne Stroustrup developed C++, which is much like C, but with a number of important extensions. C++ has been described as "one of the most important programming languages of the 1990s and promises to continue strongly into the 2000s" (Prata 1). As a computer programmer, I have had opportunities to work with this language to write system software. I have found many interesting things about this language: it has certain characteristics over other languages. The most remarkable are: portability, brevity, C compatibility, object-oriented programming and speed.
Most of us would agree that computers have become an integral part of society. We can touch them and see the results of their incredible capabilities. But a computer does nothing until directed to do so. Computers are able to perform many different tasks. These tasks are not made by the computer itself, but they are performed following a series of predefined instructions that conform what we call a program. The computer programs that run on a computer are referred to as software. A computer does not have enough creativity to make tasks for which it is not programmed, so it can only follow the instructions of the programs that it has been programmed for. The ones in charge to generate programs so that the computers may perform new tasks are programmers.
For many years, the principle goal of computer programmers was to write short and efficient programs. When programmers choose a programming language to write, the first consideration is known as "level of the programming language." The level determines how near to the hardware (devices such as keyboard, screen, disks, memory and processing unit that comprise a computer) the programming language is. Machine language, the first generation was written at a basic level of computer operation called low-level language, which used symbols for instructions (e.