Putting Together C/C++ suite

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • theravenproject
    New Member
    • Mar 2008
    • 3

    Putting Together C/C++ suite

    I am just getting into learning to program with C/C++, I am trying to put together all of the applications I will need to write programs and execute them all on my cpu-I am using windows xp home right now (But will be switching back to Linux before long on this cpu when I buy my new one) but still-I need a list of all apps I will need to write/compile/execute and so on-can someone point me in the right direction? IMPORTANT- so far the only thing I have is an excellent freeware text editor by the name of Notepad++-so what else will I need? (My book assumes that you already have a store bought suite) Thanks

    -The Ravenproject
  • Banfa
    Recognized Expert Expert
    • Feb 2006
    • 9067

    #2
    If you get an IDE it will come with a built in text editor and all the other programs you need to compile, some popular ones are

    MSVC 2005, it comes in a free Express edition as well as purchasable editions with extended features.

    Bloodshed Dev-C++ - Free download of an IDE that runs on Windows

    In Linux you will be able to get everything you need via the package manager. I believe many installations come with the necessary programs already installed I believe. These would be GNU C++ and GMake.

    Comment

    • theravenproject
      New Member
      • Mar 2008
      • 3

      #3
      Thank you very much!!!! By the way-any reccomendation as to which one is better for running on windows xp as well as which one is better to use/better developed and supported? I am downloading the bloodshed-dev C++ as we speak but am always interested in getting better ssoftware (Aren't we all?) and also-I am going to be setting up another system at my home and am probably going to be switching to ubunut/kubuntu on one of my systems....is Linux an overall better platform for the serious developer?

      Thank you for any and all help-and thank you more for your patience with me and my newbie questions!

      Comment

      • oler1s
        Recognized Expert Contributor
        • Aug 2007
        • 671

        #4
        By the way-any reccomendation as to which one is better for running on windows xp as well as which one is better to use/better developed and supported?
        Currently, I recommend the Visual C++ compiler. The latest free version is the Visual C++ Express 2008 edition. It comes with the same compiler as the VS full edition, so it’s not like you are losing out on the compiler end.

        Dev-C++ is an IDE. The compiler it uses is MinGW. MinGW is (simply put) the gcc compiler for Windows. The two most used C and C++ compilers are probably Visual C++ and gcc. But Dev-C++ is a really old IDE, and it’s pretty bad now. If you really want to use it, I recommend wxDev-C++, which is the offshoot that’s actually decent. A lot of people have chosen (like me) to use Code::Blocks or another IDE with MinGW.

        For someone getting started on Windows with a compiler, learning how to install their compiler toolchain and what not is probably a bit excessive in setup headaches. Which is why I recommend Visual C++. It’s easier to get started with it (although eventually you will have to learn what the GNU toolchain is like).

        is Linux an overall better platform for the serious developer?
        No. Windows, Macs, and Linux are all equal. There is no “better” platform.

        Here’s the impression I get from your two posts. You are looking at programming as something that depends highly on what software you have on your computer. That’s completely wrong. It’s about as effective as saying, “I want to learn to type in English, is Microsoft Word or OpenOffice Writer a better choice?” Huh? It’s a generic skill. If you are unable to move between toolsets, there’s something seriously wrong about the way you learned the language.

        The questions you really should be asking yourself is, “what should I be looking to do as a beginner programmer” and “what language should I be starting with”. Those are the important questions to ask (which have also been answered on the internet and internet forums). I don’t even recommend starting with C++. It’s a bad first language.

        One nitpick. There’s no language called C/C++. Yes, C code and C++ code have certain interoperabilit y. But they are two different languages. The idioms are different. The code looks very different. And people who refer to programming in C/C++ are programming in neither. I want to beat this into people because it’s a disaster when people don’t properly distinguish between the two, and mix the code up.

        Comment

        • Banfa
          Recognized Expert Expert
          • Feb 2006
          • 9067

          #5
          Originally posted by oler1s
          But they are two different languages. The idioms are different. The code looks very different. And people who refer to programming in C/C++ are programming in neither. I want to beat this into people because it’s a disaster when people don’t properly distinguish between the two, and mix the code up.
          If we are going to nit-pick then you are not really talking about the language but the design methodology, object orientated or procedural.

          C and C++ code does not have to look different, in fact there are some situations where it just isn't really possible. There is no object orientated why to write the baud rate to the uart hardware register located at the absolute address 0xFFB2.

          My point is that C++ can still be used as a procedural language (in fact it was specifically designed like this) it's just that at a high level there are many advantages to using a object orientated design, enough to make using a procedural design bad practice.

          I see many C++ tutors/programmers come out with this sort of sweeping generalisation you just have but these only really apply when you are programming on a high level system, like a PC, where you have no direct interaction with the hardware. C++ is much more flexible than that, in fact it is probably one of the most flexible languages (competing for the title with C in my opinion), and can be used on a huge range of platforms and there are times when it is necessary to use the procedural abilities of the language.

          What you call the difference between C and C++ is actually the difference between a procedural design and an object orientated design. You can use C or C++ to implement either design (although it is easier to implement an object orientated design in C++ rather than C) and it is the design that effects what the code looks like, not the underlying syntax of the language used to implement that design.

          Comment

          Working...