The C++ Programming Language

The C++ Programming Language

Length: 2800 words (8 double-spaced pages)

Rating: Excellent

Open Document

Essay Preview

More ↓
The C++ Programming Language

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.

How to Cite this Page

MLA Citation:
"The C++ Programming Language." 30 Mar 2020

Need Writing Help?

Get feedback on grammar, clarity, concision and logic instantly.

Check your paper »

Programming Language And Procedural Programming Essay

- One of the major paradigms in programming language is Object Oriented programming. In modern software engineering object oriented programming is considered as the major concept, as it allows the programmer to facilitate clean and efficient code. Apart from this, the design patterns of object oriented programming suits well with most of the computing issues. Object oriented programming produces well organized code and also focuses on determinant of productivity. In this report we will discuss and compare objected oriented programming language and procedural programming language along with the genesis of OOP....   [tags: Object-oriented programming, Programming language]

Research Papers
798 words (2.3 pages)

Essay on Programming Languages : Programming Language

- Programming Languages Programming language is a form of language that is designed to communicate instructions to a computer; the language can be used to control the behavior of the computer or calculate math equations. There are five generations of programming languages that have been developed from the 1930’s to present day. These programs make it capable for computers to perform a number of applications from computing algorithms to directing the behavior of the computer. Once the first computers were created programming languages took longer to develop....   [tags: Computer, Programming language, Computer program]

Research Papers
1174 words (3.4 pages)

Essay On Computer Programming

- Abstract Computer programming is an important aspect of computer science, in which an algorithm is taken and encoded into a notation to be executed by a computer. There are many different types of programming languages that exist today, to name a few of the most popular: Java, C, C++, PHP and Python. Computer programming is a continuous area of study, and will only grow over the coming years due to the rise in technology and high-demand for programmers to learn these different languages. Computer programming in relation to computer science Computer science is a vast area of study and computer programming is arguably one of the most important aspects of computer science....   [tags: Programming language, Computer programming]

Research Papers
782 words (2.2 pages)

What I Learned For My Programming Essay

- 1, To describe what I did to prepared for my programming First of all I had no much computer programming skill from the past , but I do have some short-term programming courses completion. of course the basic idea from the past about python language programming is a big deal to me to prepared myself early for this class. Otherwise not easy to find out exactly what is going on around computer language program; programming a computer is not so simple and controlled within a short period of time, computer programming is need big time and a lot of effort....   [tags: Programming language, Computer programming]

Research Papers
1067 words (3 pages)

Types Of Programming And Its Effects On Our Lives Essay

- People use programs in their everyday lives, even if they don’t know it. But to start off, one needs to know what a program is. A program is a set of instructions that controls the operation of a machine. This is used everywhere. Whether a person is writing a paper or browsing the internet, taking a picture or playing a video game, everything people do on electronic devices runs on a program. Programming is an area that may confuse most people. There are many types of programming and many more types of programming languages....   [tags: Programming language, Computer programming]

Research Papers
1144 words (3.3 pages)

Essay about Paradigm Shift Within Programming Languages

- Paradigm Shift in Programming Languages till date -by Rachit Shah (14BCE110) Programming Languages have existed for over a century. Over the years there has been major change in its syntax and its way of operation to suit our needs. Programming languages enable users to write programs for specific computation or algorithms. In the 1940s the first programming languages were assembly languages. But since it was too laborious ( having to learn all memory locations ) and too error-prone, it needed to evolve into something more human-language like....   [tags: Programming language, Object-oriented programming]

Research Papers
1021 words (2.9 pages)

History Of Programming, Programming And Computational Thinking Essay

- History of Programming There’s a running joke that programmers spend more time automating a task than it takes to actually do the task. This joke has a lot more ground in the history of programming than most people realize. Even before the creation of what computers are currently perceived as, programming and computational thinking were evolving. From punch cards to text documents, computer programming has evolved to make it easier and more user friendly. Throughout computer history, people have been trying to make machines do anything....   [tags: Computer, Programming language, Programmer]

Research Papers
1059 words (3 pages)

Essay on Java Programming Language

- INTRODUCTION Java is an object-oriented programming language developed by James Gosling and colleagues at Sun Microsystems in the early 1990s. Unlike conventional languages which are generally designed to be compiled to native code, Java is compiled to a bytecode which is then run (generally using JIT compilation) by a Java virtual machine. The language itself borrows much syntax from C and C++ but has a much simpler object model and does away with low level tools like programmer-manipulable pointers....   [tags: Computer Programming Languages]

Free Essays
8956 words (25.6 pages)

Pascal Programming Essay

- Pascal programming language was designed in 1968, and published in 1970. It is a small and efficient language intended to encourage good programming practices using structured programming and data structuring. Pascal was developed by Niklaus Wirth. The language was named in honor of the French mathematician and philosopher Blaise Pascal. In 1641, Pascal created the first arithmetical machine. Some say it was the first computer. Wirth improved the instrument eight years later. In 1650, Pascal left geometry and physics, and started his focus towards religious studies....   [tags: Data Structuring, Programming Language]

Research Papers
1328 words (3.8 pages)

Java Programming Language Essay

- Java: It's not just for breakfast anymore. The World-Wide Web as it is today reminds me of a bad date I had once; boring, flat, and unexciting. It does absolutely nothing for me. The pages are limited by the specifications of HTML which calls for a two-dimensional layout and a static page. I for one am looking for some new element. A new angle if you will. Something to jolt some life into The Web. Sun Microsystem's Java will bring a new interactive element to the Web. It is designed to enhance the browsing experience and take us into the next generation of The Web....   [tags: Computers Technology Programming Languages]

Research Papers
1765 words (5 pages)

Related Searches

g. "A" for add). As new faster generation computers became the norm, low-level language became slower and more tedious for most programmers. That was why programmers began using English-like abbreviations to represent the elementary operations of the computer. The English-like abbreviations formed the basics of assembly languages. Translator programs called assemblers were developed to convert assembly language programs to machine language at computer speeds. For instance, the following section of a machine language program that adds overtime pay to base pay and stores the result in gross pay:

+ 1300042774

It is clearer if programmers use assembly language such as:

load basepay
add overpay
store grosspay

Although computer usage increased rapidly with the advent of assembly languages, computers still required many instructions to accomplish even the simplest tasks. To speed up the programming process, high-level languages were developed to allow programmers to write instructions that look almost like everyday English and contain commonly used mathematical notation. A payroll program written in a high-level language might contain a statement such as:

grosspay = basepay + overpay

Obviously, language design is an evolutionary process. And the higher the level of the language, the more concise, compact, and control hardware efficiently is. As Stephen Prata commented, "Assembly language is a low-level language; that is specific to a particular computer processor" (Prata 3). If programmers want to move an assembly program to a different kind of computer, they may have to completely rewrite the program using a different assembly language. Because language design is an evolutionary process, looking at the lessons learned from the past languages often creates a new language, or adds newly conceived features to a language.

C has been in use for about a quarter of a century and its use in recent years has been increasing dramatically. But "Once people learn C++, they find its features more powerful than those of C, and these people often choose to move to C++. When they begin using the various C++ features generally call 'C++ enhancements to C' to improve their style of writing C-like program." (Deitel4). And one of these features is portability. Portability is a characteristic that allows programmers to practically use the language in many types of situations without any changes. People can use the same set up of the operating system to code programs in any type of computer, either in the office computer, a personal computer or a portable computer. The language does not have to be modified with these systems. Other languages have variations, and they were a bit as if each time we bought a new car, we found that the designers decided to change where the controls went and what they did, forcing the users to relearn how to drive. It became clear that "A national standard version of C++ was needed to ensure that C++ is portable. In 1983, the technical committee was created under the American National Standards Committee on Computers and Information Processing to 'provide an unambiguous and machine-independent definition of the language' in 1989, the standard was approval." (Deitel10). This is good for many reasons. Code written in C++ that conforms to the national standards can be easily integrated with pre-existing code. Unlike many other languages, C++ gives the programmers a great deal of control over the computer. With that control comes responsibility; programmers have the power to do things that other languages would never allow them to do. For instance, C++ is run on a wide variety of platforms, from PCs to mainframes while other languages such as Basic, Cobol, and Assembly don't have that advantage. Programmers like it very much, they like finding a language that is a tool, not an obstacle. In other words, C++ seems like the perfect combination of control and programming power.

C++ was originally written to be used when programs got very long, over 2,500 lines. The more modular and compartmentalized programs are the better. The term brevity simply means that we can use C++ to write a small three-page program versus a ten-page program. For example, the three-page program in the C++ language can equal ten-pages in the Cobol language. This feature allows work timesaving; prolonged keyboard life, and possibly helping with health (examples, carpal tunnel syndrome, arthritis and other computer user symptoms). One of the best features of the C++ language is to help programmers wrap up sections of long programs into discrete units; make the programs easier to understand. For example, the function commands in C++ provide a convenient way to "break large computing tasks into smaller ones and enable people to build on to what others have done instead of starting over from scratch" (Ritchie 67). Functions allow the computer to have order so that the tasks follow a path, and items such as repetitions, do not interfere with the flow of the program. If the same information gets repeated, it would cause a loop or a circle and the flow of information would not continue all the way through to solve the problem. By having functions, the process of a program is faster because it is able to eliminate the circle of information. According to Andy Koenig, a colleague of C++'s author, programmers can make increasingly complex C ++ programs with ever more simple interfaces (Duffy 1999).

C++ language is more attractive to programmers because of another feature: C compatibility. C++ is a superset of C, meaning that any valid C program is a valid C++ program. C++ can use existing C software libraries, which consist of rules and reference points. These libraries provide solutions to many common programming problems and tools to simplify many more problems. For instance, to convert a character string into numeric type of a variable, programmers can use the function atoi, which is from the utility function library instead of defining another program to do the converting job. As C++ became more widely used, and as the facilities it provided over and above those of C became more significant, the question of whether to retain compatibility was raised again and again:

There are millions of lines of C code that might benefit from C++, provided that a complete rewrite from C to C++ were unnecessary; there are millions of lines of library functions and utility software code written in C that could be used from/on C++ programs provided C++ were link compatible with and syntactically very similar need only learn to use the new features of C++ and not relearn the basics (Stroustrup 6).

C++ gives programmers even more power to bring up the idea of an object, called stack, which controls and retrieves data by using functions. Instead of keeping functions and data separate, programmers combine them to manipulate the data to make the programs more modular. One big advantage for the programmers who already know either C or C++ is the similarities they share, one who knows either language can easily use the other. In fact, this computer language did not take long to find audiences, "In 1987, 200 people attended the first C++ conference. The following year, more than 600 people attended. By early 1990, the number of users was in vicinity of 500,000, and today there are more than 1.5 million users making ,the world's fastest-growing computer language" (Duffy 1999).

C++ is an "object oriented" language because it allows the reusability of code in a more logical and productive way. When programmers write a C++ program that includes many different files, they can later use those files to create new programs. And many more combinations could be used, like the above, in order to create new programs in a convenient and fast way. According to Marshall Brain, "All object oriented languages try to make part of program easily reusable and extension. Programs are broken down into reusable objects. These objects can then be grouped together in different way to form new programs"(Brain 1998). This is a very unique and powerful concept to write a new program by assembling existing pieces. Because the benefit of using the existing library, experienced programmers write with software that is stored in the standard library so others can use it as a personal tool to shorten their programs in a fast and efficient way. By sharing the information, object oriented language is not only useful for increasing productivity, but it also allows us to write programs at a fast pace for a language that utilizes speed even without these shortcuts.

The speed is a very special topic for those who use C++ language. The amount of time saved is very pleasurable for the programmers. Jack Purdum, author of C programming Guide book also adds, "Another advantage of C is its execution speed. If you have never worked with a compiler and are used to an interpreted language such as BASIC, you're in for a pleasant surprise" (Purdum 2). When C++ computes a program, it works like a 100-meter sprinter in the Olympic games. Other programs tend to take on the speed of a marathon runner. For example, a program to test a variable that increases from 0 to 30,000, in Basic language takes 96 seconds compared to the two seconds it takes in the C++. Because of the reusable features mentioned earlier, the C++ program is always shorter than other language programs. If we compare a typical system that works on a network basic, we use Cobol as a language. The server or the brain of the system is located by itself and multiple computers are hooked up to it. Information is shared in a loop system. In other words, the information must get to the server then come back to the system before the program is complete. On the other side, offices that use C++ on their computer systems do not use a network and are not dependent on a server. The second type of office system is faster because each individual computer has its own mini server built inside; this allows the information exchange to be faster on the office systems that run on C++. If something happens to the Cobol server many computers would be affected. The C++ office systems can't store as much information; however the speed the programmers gain with this type of system shows us an example of the speed advantage with C++.

C++ has many interesting features. However, as Allen Wyatt said, "No language is perfect. They all have strong points and corresponding weak points" (Wyatt 3), and C++ is no exception. Programmers like C++ but sometimes it is frustrating to work with because of the following disadvantages: it is not a language for beginners, and it gives the programmers more freedom to make mistakes. C++ itself is a superset of C; it was originally an extension of C, which means one has to know how to program in C before tackling C++. As we know, computer programming is about problem solving. Every computer program solves some particular problems, even programs to play games. It is impossible to write a computer program without understanding the problem that the programmers are asked to solve. How to program in C++ is a further step of climbing a ladder after going through the basic steps of how to program in the C language. For this reason, C++ is not a language for beginners. It is a complex language requiring the skills of properly trained programmers as Stephen Prata stated, "If you are beginning to think that learning C++ may involve some mind-stretching effort on your part, you're right" (Prata 2). Furthermore, C++ is not only a programming language for experienced programmers but it also has another weak point that may cause problems for programmers. C++ has extensive libraries for mathematical computations, character analysis, structures…etc.

These libraries are rules and reference points that provide solutions to many common problems, and tools to simplify many more problems. For example, programmers do not need to write code to find square roots when there are available files from the C++ libraries that programmers can include the names of the command in one line. These libraries help programmers to shorten their programs, make the code easy to read, and save time; but they provide many ways to solve the problems and this can be complicated for the users, especially beginners.

Despite all of the disadvantages that C++ brings, C++ still is a dominant programming language that programmers like to work with. It may be complicated at first but the more time people spend on it, the more interesting things become. After spending time to get acquainted with all the obstacles that come in C++, beginners can start his or her own adventure. Disadvantages are really only small challenges for a programmer; everyday in the programmer's job a challenge is sure to be a part of an ordinary day. C++ is an enjoyable language - not necessarily because it is easy to learn but because it is flexible. Characteristics such as portability, brevity, compatibility, object-oriented programming, and speed help people understand why C++ is a language embraced by programmers. Today, C++ is the most widely used language and the basis for software applications from PCs to supercomputers. C++ has been written into transmission, switching and operations systems, internet service, and many other fields such as business, technology, education and information. There are many reasons that programmers like it. These reasons can all be summed up in the guiding spirit behind the language: C++ is a language that is designed as a true working tool, and it is more than good enough for a wide range of application for the programmers. Until another language with such great acceptance comes along, many people in the programming field will have the choice of C++.

Works Cited

Brain, Marshall. "Understanding C++: An Accelerated Introduction." (1998).
DevCentral Learning Center. 6 July 2000 < http://devcentral.ifte...1earning/tutorial.html >.

Deitel, Harvey M, and Deitel, Paul J. How to program C++. Englewood Cliffs: Prentice Hall, 1995.

Duffy, Tom. "C++ Success Story." Computer Weekly. (4 Nov 1999). 1 July 2000
< http://web2.inf.../purl=rcl_BCP_O_A55729884.html >.

Prata, Stephen. C++ Primer Plus. Corte Madera: Waite Group Press, 1998.

Purdum, Jack J. C programming Guide. 2nd ed. Indianapolis: Que Corporation, 1985.

Ritchie, Dennis. The C programming language. 2nd ed. Englewood Cliffs: Prentice Hall,

Stroustrup, Bjarne. The C++ Programming Language. 2nd ed. Murray Hill: Addison
Wesley Publishing, 1991.

Wyatt, Allen. Using Assembly Language. 2nd ed. Carmel: Que Corporation, 1990.
Return to