Added wikipedia link for Bjarne Stroustrup (#30052)

This commit is contained in:
Aadat
2019-03-04 01:52:19 +05:30
committed by Christopher McCormack
parent 99906d2589
commit 5da72be9ca

View File

@ -1,101 +1,101 @@
--- ---
title: C++ title: C++
--- ---
# Hello World! - Your First C++ Program # Hello World! - Your First C++ Program
## What is C++? ## What is C++?
* C++ is a general purpose programming language which has been used since the 1990's * C++ is a general purpose programming language which has been used since the 1990's
* It was designed as a thesis paper by Bjarne Stroustrup under the name "C with Classes", which later became C++. * It was designed as a thesis paper by [Bjarne Stroustrup](https://en.wikipedia.org/wiki/Bjarne_Stroustrup) under the name "C with Classes", which later became C++.
* It is a version of C that includes Object-Oriented elements, including classes and functions. * It is a version of C that includes Object-Oriented elements, including classes and functions.
* It is considered one of the biggest programming languages, as you can see in the following image: * It is considered one of the biggest programming languages, as you can see in the following image:
![Img](http://static1.businessinsider.com/image/59deb30392406c21008b6148-1200/for-bonus-points-heres-the-chart-showing-these-languages-relative-popularity.jpg) ![Img](http://static1.businessinsider.com/image/59deb30392406c21008b6148-1200/for-bonus-points-heres-the-chart-showing-these-languages-relative-popularity.jpg)
_source: Github_ _source: Github_
### Your First Program in C++ ### Your First Program in C++
```cpp ```cpp
#include <iostream> #include <iostream>
using namespace std; using namespace std;
int main() int main()
{ {
cout << "Hello World!" << endl; cout << "Hello World!" << endl;
return 0; return 0;
} }
``` ```
#### The Output of this program will be: #### The Output of this program will be:
``` ```
Hello World! Hello World!
``` ```
Now, let's break down the code: Now, let's break down the code:
#### Lines 1 and 2 #### Lines 1 and 2
```cpp ```cpp
#include <iostream> #include <iostream>
using namespace std; using namespace std;
``` ```
* The first line tells the computer to use the `iostream` header file for this specific program. A header file is a separate file with pre-written C++ code. There are many other header files which are required for a specific program to run properly. For example, `math`, `vector`, `string`, etc. Header files are generally represented by a `.h` extension, when including standard library header files you don't include the `.h` extension. * The first line tells the computer to use the `iostream` header file for this specific program. A header file is a separate file with pre-written C++ code. There are many other header files which are required for a specific program to run properly. For example, `math`, `vector`, `string`, etc. Header files are generally represented by a `.h` extension, when including standard library header files you don't include the `.h` extension.
* The `iostream` header contains the public interface for the input-output stream from the standard library. The `iostream` file contains code for allowing the computer to take input and generate an output, using the C++ language. * The `iostream` header contains the public interface for the input-output stream from the standard library. The `iostream` file contains code for allowing the computer to take input and generate an output, using the C++ language.
* The second line tells the computer to use the standard namespace which includes features of standard C++. You could write this program without this line, but you'd have to use `std::cout` instead of `cout` and `std::endl` instead of `endl` on line 4. It makes the code more readable and our lives as programmers easier. * The second line tells the computer to use the standard namespace which includes features of standard C++. You could write this program without this line, but you'd have to use `std::cout` instead of `cout` and `std::endl` instead of `endl` on line 4. It makes the code more readable and our lives as programmers easier.
#### Line 3 and 4 #### Line 3 and 4
```cpp ```cpp
int main() int main()
{ {
``` ```
* C++ starts execution of a program from the -main function- `int main()` . During execution, the computer starts running the code from every line from `{`(opening bracket) till `}`(closing bracket) * C++ starts execution of a program from the -main function- `int main()` . During execution, the computer starts running the code from every line from `{`(opening bracket) till `}`(closing bracket)
**NOTE : Every function starts with an opening curly brace "{" and ends with a closing curly brace "}".** **NOTE : Every function starts with an opening curly brace "{" and ends with a closing curly brace "}".**
* Line 4 indicates the start of the main() function. * Line 4 indicates the start of the main() function.
#### Lines 5, 6 & 7 #### Lines 5, 6 & 7
```cpp ```cpp
cout << "Hello World" << endl; cout << "Hello World" << endl;
return 0; return 0;
} }
``` ```
* The word `cout` in C++ is used to stream data to standard output. * The word `cout` in C++ is used to stream data to standard output.
* It is followed by `<<` , the _insertion operator_. * It is followed by `<<` , the _insertion operator_.
* Whatever is in the double quotes `""` is printed. Certain special characters have a different syntax for print statements * Whatever is in the double quotes `""` is printed. Certain special characters have a different syntax for print statements
* Now to print any other kind of data, you have to add `<<`. * Now to print any other kind of data, you have to add `<<`.
***Challenge: Change Hello World to another sentence. What will be the output?*** ***Challenge: Change Hello World to another sentence. What will be the output?***
* `endl` is another symbol from the iostream library which means to **end this line and go to the next line during output** . - _cout stands for "console output"_ * `endl` is another symbol from the iostream library which means to **end this line and go to the next line during output** . - _cout stands for "console output"_
* Finally, finish the statement with a semicolon `;`. * Finally, finish the statement with a semicolon `;`.
**NOTE : Every statement except the main function definition and the #include directive needs to be ended by the semicolon. Without a ";", you may encounter a compiler error.** **NOTE : Every statement except the main function definition and the #include directive needs to be ended by the semicolon. Without a ";", you may encounter a compiler error.**
* `return 0;` safely terminates the current function i.e. 'main()' in this case and since no function follows after 'main()' the program is terminated. * `return 0;` safely terminates the current function i.e. 'main()' in this case and since no function follows after 'main()' the program is terminated.
* Don't forget to tell the computer that this is end of the main() function. To do this , you add the closing curly brace "}". You will encounter compiler error before program execution if you do not include the **}** . * Don't forget to tell the computer that this is end of the main() function. To do this , you add the closing curly brace "}". You will encounter compiler error before program execution if you do not include the **}** .
### The code should look something like this: ### The code should look something like this:
![Img](https://i.imgur.com/d1liGwI.png) ![Img](https://i.imgur.com/d1liGwI.png)
Programmers use a Hello World program (like this one) as a ritual on using a new programming language. It is a symbol of good luck. Programmers use a Hello World program (like this one) as a ritual on using a new programming language. It is a symbol of good luck.
_You have finished coding your first C++ program and have understood most of the code you have written/typed. CONGRATULATIONS!_ _You have finished coding your first C++ program and have understood most of the code you have written/typed. CONGRATULATIONS!_
**Good Luck to all of you and happy coding! :)** **Good Luck to all of you and happy coding! :)**
**Happy Coding ! :)** **Happy Coding ! :)**
**Feel free to ask any questions on FreeCodeCamp's GitHub page or [FreeCodeCamp's Forum.](https://forum.freecodecamp.org/)** **Feel free to ask any questions on FreeCodeCamp's GitHub page or [FreeCodeCamp's Forum.](https://forum.freecodecamp.org/)**
[Try it yourself ! :)](https://repl.it/L4k3) [Try it yourself ! :)](https://repl.it/L4k3)
**You need software to write and execute C++ code, download from one of the links below:** **You need software to write and execute C++ code, download from one of the links below:**
[Codeblocks](http://www.codeblocks.org/downloads/26) [Codeblocks](http://www.codeblocks.org/downloads/26)
[Xcode](https://developer.apple.com/xcode/) [Xcode](https://developer.apple.com/xcode/)
[Eclipse](http://www.eclipse.org/downloads/) [Eclipse](http://www.eclipse.org/downloads/)