Home Upgrade Search Memberlist Extras Hacker Tools Award Goals Help Wiki Contact

C 

[C/C++] The Definitive Beginner's Guide towards learning Programming

Hello, and welcome. This is a short prologue to define who this thread is addressing, and the audience it is aimed at. 🙂

If you are wanting to learn programming in general, and have chosen C/C++ as your first language, this is the thread for you!
If you already know how to program in general, and are wanting to learn more about C/C++, then this is the thread for you!!

I will refer to Wikipedia, and other websites, as references for (reading/educating) extracurricular material.



Table of contents
  1. A quick explanation of IDEs & compilers!

  2. Getting started a. (Which compiler is best suited for you)

  3. Getting started b. (Installing an IDE/compiler)

  4. Commonly listed C/C++ tutorials (YouTube & HTML)

  5. Commonly listed forums

  6. Commonly listed APIs (Creating games & GUIs)

  7. How to help yourself (Search engines & invaluable programming advice)





- A quick explanation of IDEs & compilers!
I highly suggest you read the Wikipedia pages! If nothing else, continue to read my descriptions...
- Compiler
- Integrated Development Environment

What an IDE is...
The acronym, "IDE," stands for: Integrated Development Environment. In short, what this means is: An IDE is a program, like any other, but geared towards a programmer. It contains many gimmicks (or luxuries, however you want to view it), such as automated command-line parameters for the linker, and/or the compiler itself (in conjunction with a simple, "Compile" button). Many IDEs also provide syntax checking (real-time is how IntelliSense operates), and syntax highlighting (a lot of IDEs offer the ability to modify what is highlighted, and what color(s) to use for the foreground/background of the highlighted words, or common parameters (such as function arguments)).

What a compiler is...
In the utmost ambiguous form: A compiler transforms a programmer's source code into 'object code' (also called: 'machine code').
The machine code is stored as/an object file/s, which are/is then used by a linker to generate an executable ('binary') program.

An IDE is not a compiler. An IDE is not tied to any single given compiler. Compilers and IDEs may be interchangeably used at will.
From my experience, this is a common misconception (EG: Code::Blocks and Visual Studio cannot both use the MSVC/GCC compilers).



- Getting started a. (Which compiler is best suited for you)
There is a wide array of options of compilers to choose from out there. Depending on what platform you're using, you'll be limited to particular ones.
There are compilers aimed at specific operating systems, and specific languages. There are compilers even aimed at cross-platform compatibility!

If you're running (almost) any operating system, and are aiming for cross-compatibility: Use the GNU/GCC compiler!
If you're running Windows (any flavor), and are aiming for Windows-only development: Use the MSVC++ compiler!
In a short summarization: Those are the most common modern compilers around today. 🙂



- Getting started b. (Installing an IDE/compiler)
Every IDE/compiler is installed differently. Especially for every operating system.
Instead of creating a step-by-step explanation of how to install every IDE/compiler, I will refer to the home-sites "Download" page.
  • Code::Blocks (Windows, Linux, and Mac OS/X 10.4+)
    Download the ~74MB size file (Code::Blocks + MingW)
    ...

  • Microsoft Visual Studio 2010 Express Edition (Windows only)
    Select your native language, and select "Install Now"
    ...

  • Qt IDE (Windows, Linux, and Mac OS/X)
    Scroll down to the bottom of the page. Select your operating system.
    ...

  • NetBeans IDE (Windows, Linux, Mac OS/X, and Solaris)
    Click on "Download" (find it in the list; It is ~49MB in size)
    ...

  • Eclipse CDT (Platform independent? Unsure)
    Follow the "downloads" link near the top.
    ...

  • CodeLite (Windows, Linux, Mac OS/X)
    Follow the page (very informative)
    ...

  • Zeus Editor (aimed at/for Windows-only)
    Click on "Downloads" on the left pane



... As you can see! A WIDE variety of IDEs are out there! This is only a glimpse. 🤐



- Commonly listed C/C++ tutorials (YouTube & HTML)
HTML:

YouTube:



- Commonly listed forums



- Commonly listed APIs (Creating games & GUIs)



- How to help yourself (Search engines & invaluable programming advice)
If you've skipped to this part, you've skipped to the best part! 🙂

The most invaluable resource to anything on this earth starts with the letter 'Y,' and ends with an 'o.'
That word being: YOU!! Without YOU: YOU Cannot learn! Without YOU: There is no point.
The only way to learn programming is by you, through you, and for you... Programming is not for everyone.
Programming is about problem solving. If you do not like solving problems, programming might not interest you.
However, if you do love solving problems! And get excited over it (even now), read on! 🙂

The first and foremost answers you should seek, should come from: GOOGLE (or your favorite search engine).
If Google majestically fails you (somehow), the next step is to resort to searching say.. MSDN.
If MSDN (Microsoft Developer Network) fails you, search other particular websites (API libraries).
If those fail you, then search by searching forums (use their SEARCH engine that is provided).
If that fails you, then resort to creating an account, and posting a literate thread, explaining in depth what your issue is.
If that fails you! Finally resort to the last possible solution: Log onto an IRC network, or PM users on a forum.
If that fails you, then find a book, or some other resource that's guaranteed to solve your problem at hand.



The epilogue: If you have any commonly known of forums, or APIs, or anything else, please PM me, do not post here. Thank you! 🙂

EDIT: Fixed the thread title (hours later)
EDIT: Updated the API list as per requested
Is there any such thing as a woman of honor, and sincerity?

https://www.PutItOnMute.com/

4K HDR, WDR time-lapsed truck driving videos!
Nice tutorial dude.
Hope there will be more c++ coders soon.
if i just knew how to give you rep+...
nice tutorial mate
Nice tutorial dude. I'm sure some beginners will appreciate this! You should add FLTK(Fast Light ToolKit) to APIs. 🙂

Oh man finally a good tut thanks bro, you should get a reward of some sort
This is what people should see, not those other shit tutorials that make me cry in this section :)
Props to you :D
Great List for a beginner like me! :D
i love you so much lol +3 to you man so insightful
Will take a look tomorrow, looks great!

Thank you!
Nice man :) keep up the good work :D :D
StackOverflow is a great forum for programming.
hey thanks this is awesome. wish there were more posts like this.
really appreciate your help.. this tutrial include a good knowledge about C++ which all programmers need it to improve there skills or to learn programming
You have to add an extra phrase at the end of the instructions.

"and if THAT fails you then we're all doomed."

Edit: oh, and good job.
Thanks for making this tutorial. I'm bookmarking it so I can read it during some free time :D
[Image: hGGIk.png]


Possibly Related Threads...
Thread / Author Replies Views Last Post
by KaradiMar 23, 2024 05:13 PM 2 220 Mar 23, 2024 05:13 PM
Last Post: happygonutty
[C] by NemuldiSep 18, 2021 11:32 PM 4 305 Sep 18, 2021 11:32 PM
Last Post: Sajuuk
[C] by InstaKillApr 11, 2021 03:21 AM 10 362 Apr 11, 2021 03:21 AM
Last Post: HaileyJOKER