It's been discussed before.
Rather than showing how many voters chose something, a multiple choice poll shows how often something was chosen versus the rest. One choice may have been selected 100% of the time, you see.
MS Visual Studio
Borland
GCC
Other paid (Please post)
Other free (Please post)
Other open-source (Please post)
It's been discussed before.
Rather than showing how many voters chose something, a multiple choice poll shows how often something was chosen versus the rest. One choice may have been selected 100% of the time, you see.
It's multiple choice.Originally Posted by ಠ_ಠ
Look up a C++ Reference and learn How To Ask Questions The Smart WayOriginally Posted by Bjarne Stroustrup (2000-10-14)
Ah, don't worry. It was a joke!
I find that instead of learning CLI, a beginner should actually learn the basics of building a program. You don't use a chainsaw without reading its manual first, do you?
When the programmer has learned everything about the build process, then he/she can go about using either CLI or an IDE to do the building, because you're likely to need that information regardless if you're using CLI or IDE to build.
That's my take on the whole CLI is advantageous.
And the poll actually reflects pretty much what we already know... Visual Studio and GCC is the two most popular compiler(s)/IDE(s) on the board.
Don't know what this rubbish about the Visual Studio IDE is about, the topic is about "your most used compiler". Not the fluff that surrounds it
I'd say it's like learning to drive, a manual transmission from the start is going to be more advantageous. Feel free to argue Americans
For me it's GCC. Nearly always, since I'm working mostly with linux and there ain't much choice here. GCC is not the best compiler out there, but I bet it is the most flexible. It runs on many architectures and OS's, has many optimization options etc. and __attributes__ which are way better than #pragmas that MSVC uses (although I miss them, f.i. to disable a warning).
On Windows, I also use MSVC. Because I believe it is probably "better" (=faster) on Windows machines. But the thing I hate there is its differences. It gives me many warnings that a "normal" compiler shouldn't know. Like "use sprintf_s instead of sprintf". And the worst is the _large_ packages you need to download from Windows (~600 MB for the windows SDK) while struggling with Windows Genuine Advantage even though your system IS not cracked. And of course full with many things you won't need, like .NET examples.
They're not "warnings", it's Microsoft's ploy at overtaking the language. And yes, they do it elsewhere
For people suggesting that MSVC is a better optimizer than GCC, my experiences (and many others' in another programming community where many people try different compilers and look for the fastest for their program) say otherwise. It was probably true in the 3.x days of GCC, but GCC 4.x (especially 4.4) has a really good optimizer. I find GCC 4.4 to be at least equal if not better than MSVC on Windows. ICC is slightly faster than both, but costs money (though they have a free Linux version).
I use GCC since it's almost the best in optimization, and the best in just about everything else IMHO (free, open source, portable, feature-rich, well maintained and updated...). If my primary development platform is Windows, I would probably take a closer look at MSVC, though, since Windows is a secondary target of GCC (slower/less frequent updates, not as well integrated, etc).
As for GUI/CLI, I have always used CLI. Went from
to writing a shell scripts to finally using a Makefile.Code:gcc prog.c
I think most people use MSVC because of the IDE, and GCC (including GCC-based IDEs) because of the compiler. Not many people use cl.exe on the command line (or with anything other than MSVC).
Last edited by cyberfish; 07-16-2009 at 05:35 AM.
I learned on a manual and have a hard time driving an automatic now.
So big deal, you're more at ease with what you learn first(first), and then with what you use most often(later in life/career).
I learned with DevC++ then Code::Blocks as IDEs. Then I switched to a job where I started using gcc, and liked it a lot, so I got very comfortable with it. Now I'm at a job where we're stuck with VS 6.0, and I'm (unfortunately) used to that now, though we'd all really like to upgrade(it'd be a major overhaul of the project).
What happens if you install a no-op (dummy) gear selector?I'd say it's like learning to drive, a manual transmission from the start is going to be more advantageous. Feel free to argue Americans
I learned on a manual and have a hard time driving an automatic now.
I learned automatic (have only been driving for a little more than 1 year now), so I don't know anything about manual.
LTO has just been merged to mainline, so 4.5 will do this. This should give C++ programs a really, really nice performance boost.Then, is GCC able to inline functions in external source files?
Still, it says a lot about the quality of the optimizer that even without LTO, GCC can currently hold its own against MSVC.
All the buzzt!
CornedBee
"There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
- Flon's Law
No doubt this is in fact true. As with the "browser wars" they seem to believe being a gigantic distributer means they should create intentional incompatibilities in the hopes that everyone will be afraid of not conforming to MS's "homemade" standards, that only MS products will satisfy since said standards will be subject to random changes and are probably kept as secret as possible.
Of course with the browsers that plan backfired, but I just couldn't trust that kind of people with my compiler, much less my OS...what kind of policy is "anti-portability"?
An interesting consumer parallel. A manual transmission is: 1) more gas efficient 2) easier and less expensive to maintain. I imagine most people who don't know this will just go: "So what? I pay more for gas and maintenance? Whatever...I like auto!"Originally Posted by cyberfish
The problem is, it also makes driving slightly harder (or slightly more engaging, perspective), which if we raised the standards of motor vehicle operation, etc, there would probably be slightly less driving. But the goal is to maximize the number of cars on the road at any point in time; it is not to make driving an efficient or even intelligent activity.
Finally:
Wow, so there is something about the nature of VS6 such that your project now depends upon using it? Wonder of wonders! Who could have thought up a feature set like that! Very clever...Originally Posted by System_159
Last edited by MK27; 07-16-2009 at 07:45 AM.
C programming resources:
GNU C Function and Macro Index -- glibc reference manual
The C Book -- nice online learner guide
Current ISO draft standard
CCAN -- new CPAN like open source library repository
3 (different) GNU debugger tutorials: #1 -- #2 -- #3
cpwiki -- our wiki on sourceforge
Ah, that is really good news.
I seriously doubt it. They made them because they are security wizards and C's library functions are by design so unsecure.
They did it for security, not to create intentional incompatibilities.
No. VS6 is old and lacking in the standards compliant area.
Newer editions are standards compliant, so upgrading will break the code. That is why they don't upgrade.
And don't blame Microsoft. The same thing would happen to any company that used GCC 1.0.