Where can I find a good compiler for learning C++ on Windows?

  • Context: C/C++ 
  • Thread starter Thread starter triac
  • Start date Start date
  • Tags Tags
    Mind
Click For Summary
SUMMARY

The discussion centers on finding suitable compilers for learning C++ on Windows. Key recommendations include Bloodshed Dev-C++ 4.9.9.2, which integrates the GCC compiler via MinGW, and Microsoft Visual C++ Express, both of which are free and user-friendly for beginners. Eclipse is also suggested as a versatile IDE for C++ and Java, with documentation available online. Users are advised to include "system('PAUSE');" in their code to prevent the console from closing immediately after execution.

PREREQUISITES
  • Basic understanding of programming concepts
  • Familiarity with C++ syntax and structure
  • Knowledge of IDE usage, specifically Eclipse and Dev-C++
  • Understanding of compiling processes and the role of compilers like GCC
NEXT STEPS
  • Explore the features of Bloodshed Dev-C++ and its integration with MinGW
  • Learn how to use Microsoft Visual C++ Express for C++ development
  • Research Eclipse IDE setup and its documentation for C++ programming
  • Read "Accelerated C++" to enhance C++ programming skills
USEFUL FOR

Beginner programmers, students learning C++, and anyone interested in setting up a development environment on Windows.

triac
Messages
19
Reaction score
0
Hi!
I would like to learn programming (I'm a beginner except for some programs on my calculator), and I need help. I had in mind to begin with C++, but I don't know of any good compiler for Windows. If anybody knows of one, and could tell me how I use the compiler (the language itself I can learn from a book or just by studying other programs), please tell me.
Thanks!
 
Technology news on Phys.org


I used bloodshed when I started. This was a long time ago though. But I remember it being good http://www.bloodshed.net/

But I would probably recommend eclipse now. To learn how to use it, read the documentation on the web.

http://www.eclipse.org/downloads/

For a tutorial, here is one for Java. https://eclipse-tutorial.dev.java.net/ Eclipse appears to be the same for me in both languages. So, the IDE (compiler) should be the same. Best of luck!
 
Last edited by a moderator:


I agree on Bloodshed for Windows. Compiling is quite easy, you just load the .cpp file and it's a single click (or keystroke) to compile. I can't say which right now as I don't have it installed currently, but should be easy to figure out.
http://www.bloodshed.net/devcpp.html

I do that actual programming in Notepad++, which is a text editor with advanced features. I program several different languages and use Notepad++ for all of them.
 


Microsoft Visual C++ Express is pretty good (and also free; a bunch of open-source / hobbyist projects are starting to use it for their compilations now):
http://www.microsoft.com/express/vc/
 
Last edited by a moderator:


I'll third bloodshed with a little exposition. Bloodshed (I think) actually installs the gcc compiler on your computer (which is practically universal except for things like intel compilers). I think bloodshed (don't quote me on this though) actually installs MinGW to run gcc (getting swamped with acronyms yet? MinGW stands for "Minimal GNU for windows", if you want a laugh look up what GNU means in wikipedia.). I assume you are talking about windows. Bloodshed's Dev-c++ should automatically configure the compiler so that stuff written in Dev-c++ can be compiled.

So, the information I'm trying to get across is that (for your own understanding when reading about compilers and such in books), when you run the bloodshed dev-c++ installer you are actually compiling using gcc through MinGW. If you want to play around with code writing in unix (which is where most physics related programming is done) then you also might want to look into Cygwin and learn how to code and compile on that.
 


Ok, thanks a lot everybody!
So, I downloaded Dev-C++ 4.9.9.2 and wrote some really basic program like this:
#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
count<<"My first program";
return 0;
}

and then I chose compile and run. The compilation seemed to be successful but then a window (which I assumed was the running program) popped up but only for a fraction of a section. Has anybody got any idea of what's wrong?
 


You have to add system("PAUSE"); like this:

Code:
#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
    
    cout << "My first program" << endl;
    system("PAUSE");
    return 0;
}

The << endl part is just optional. It stands for end line. If you use cout again the output will appear in the next line.
 


Thanks!
 


triac said:
Thanks!


Ya, dev-c++ does that, you can enable "keep console open after running" or some such in options or only use dev-c++ to compile and then run the *.exe from the appropriate folder in DOS (which is the better way to do it since you can do things like redirect the output to file and such)
 
  • #10

Similar threads

Replies
6
Views
3K
  • · Replies 17 ·
Replies
17
Views
3K
Replies
14
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
Replies
69
Views
10K
  • · Replies 25 ·
Replies
25
Views
936
  • · Replies 13 ·
Replies
13
Views
2K
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 39 ·
2
Replies
39
Views
5K