View Poll Results: Your most used C/C++ compiler?

Voters
40. You may not vote on this poll
  • MS Visual Studio

    22 55.00%
  • Borland

    2 5.00%
  • GCC

    25 62.50%
  • Other paid (Please post)

    1 2.50%
  • Other free (Please post)

    3 7.50%
  • Other open-source (Please post)

    3 7.50%
Multiple Choice Poll.

Thread: Your most used compiler

  1. #46
    Lurking whiteflags's Avatar
    Join Date
    Apr 2006
    Location
    United States
    Posts
    9,612
    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.

  2. #47
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,413
    Quote Originally Posted by ಠ_ಠ
    ... a total of 152.18% right now
    Internet polls sure are trustworthy
    It's multiple choice.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  3. #48
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by whiteflags View Post
    Well we're not all evangelists of "the one true way."
    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.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  4. #49
    Woof, woof! zacs7's Avatar
    Join Date
    Mar 2007
    Location
    Australia
    Posts
    3,459
    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

  5. #50
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    The rubbish was: is it better to launch the compiler through CLI or through your IDE?
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  6. #51
    Making mistakes
    Join Date
    Dec 2008
    Posts
    476
    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.

  7. #52
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by Brafil View Post
    It gives me many warnings that a "normal" compiler shouldn't know. Like "use sprintf_s instead of sprintf".
    Why shouldn't it "know" if you use sprintf instead of sprintf_s? That makes no sense.
    I can understand if you are annoyed by the warning, but you can disable them.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  8. #53
    Woof, woof! zacs7's Avatar
    Join Date
    Mar 2007
    Location
    Australia
    Posts
    3,459
    They're not "warnings", it's Microsoft's ploy at overtaking the language. And yes, they do it elsewhere

  9. #54
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    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
    Code:
    gcc prog.c
    to writing a shell scripts to finally using a Makefile.

    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.

  10. #55
    Registered User
    Join Date
    Aug 2006
    Posts
    163
    Quote Originally Posted by zacs7 View Post
    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.

    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).

  11. #56
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    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.
    What happens if you install a no-op (dummy) gear selector?

    I learned automatic (have only been driving for a little more than 1 year now), so I don't know anything about manual.

  12. #57
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by cyberfish View Post
    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).
    Then, is GCC able to inline functions in external source files?
    Ie A.cpp calls a function in B.cpp.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

  13. #58
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Then, is GCC able to inline functions in external source files?
    LTO has just been merged to mainline, so 4.5 will do this. This should give C++ programs a really, really nice performance boost.

    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

  14. #59
    spurious conceit MK27's Avatar
    Join Date
    Jul 2008
    Location
    segmentation fault
    Posts
    8,300
    Quote Originally Posted by zacs7 View Post
    They're not "warnings", it's Microsoft's ploy at overtaking the language. And yes, they do it elsewhere
    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"?

    Quote Originally Posted by cyberfish
    I learned automatic (have only been driving for a little more than 1 year now), so I don't know anything about manual.
    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!"

    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:
    Quote Originally Posted by System_159
    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).
    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...
    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

  15. #60
    C++まいる!Cをこわせ!
    Join Date
    Oct 2007
    Location
    Inside my computer
    Posts
    24,654
    Quote Originally Posted by CornedBee View Post
    LTO has just been merged to mainline, so 4.5 will do this. This should give C++ programs a really, really nice performance boost.

    Still, it says a lot about the quality of the optimizer that even without LTO, GCC can currently hold its own against MSVC.
    Ah, that is really good news.

    Quote Originally Posted by MK27 View Post
    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.
    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.

    Quote Originally Posted by MK27 View Post
    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...
    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.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Compiler Paths...
    By Cobra in forum C++ Programming
    Replies: 5
    Last Post: 09-26-2006, 04:04 AM
  2. C Compiler and stuff
    By pal1ndr0me in forum C Programming
    Replies: 10
    Last Post: 07-21-2006, 11:07 AM
  3. I can't get this new compiler to work.
    By Loduwijk in forum C++ Programming
    Replies: 7
    Last Post: 03-29-2006, 06:42 AM
  4. how to call a compiler?
    By castlelight in forum C Programming
    Replies: 3
    Last Post: 11-22-2005, 11:28 AM
  5. Bad code or bad compiler?
    By musayume in forum C Programming
    Replies: 3
    Last Post: 10-22-2001, 09:08 PM

Tags for this Thread