I am attempting to move to C/C++ from a Java background. I did a little C++
DOS development in college. I am trying to gain more marketable skills in
this tough economy. I have done a little in C#.
So, What about tools?
I have VS.Net Professional and Metrowerks 8. advice on which tool is best?
Pros/Cons? What about GCC. Is that an acceptable solution in todays
development habits? I haven't ever used it but it seems popular. What tools
do you all like?
Also, I have a few reference materials already. Petzold Win32 API, C++ in
Action, Code complete, Writing Solid Code, Knuth, etc.
Which on is best geared to get started with, up to speed quickly, etc.
I am running XP Professional on an HP notebook with 1 gig of RAM.
I really appreciate your thoughts in getting started.
Thanks,
-Jason
First decide which you are trying to move to: C, C++, or both. They are
different languages, and skill in C does not imply skill in C++, nor
does skill in C++ imply skill in C.
> I did a little C++
> DOS development in college. I am trying to gain more marketable skills in
> this tough economy. I have done a little in C#.
>
> So, What about tools?
# text editor
# compiler
# linker
# debugger
# profiler
Last two are optional, really.
>
> I have VS.Net Professional and Metrowerks 8. advice on which tool is best?
Whatever. C is C. C++ is C++. It doesn't matter, from a "learning the
language" point of view, which one you use. In fact, it would be better
to get a bunch of compilers and make sure your programs work on all of
them.
> Pros/Cons? What about GCC. Is that an acceptable solution in todays
> development habits?
I've used gcc on a number of sites, so obviously it's acceptable to some
people. I use it quite a lot at home, so obviously it's acceptable to me
too. But I thought you wanted to learn the language, so any conforming
compiler will do the job.
> I haven't ever used it but it seems popular. What tools
> do you all like?
I like tools that work. That includes gcc, gdb, vim, gprof, Notepad
(yes, it works if you don't work it too hard), bcc32, cl... all the
usual stuff.
>
> Also, I have a few reference materials already. Petzold Win32 API, C++ in
> Action, Code complete, Writing Solid Code, Knuth, etc.
If you want to learn C, get "The C Programming Language", 2nd edition,
by Brian W Kernighan and Dennis M Ritchie. If you want to learn C++, I
personally would recommend "C++: How to Program" by Deitel and Deitel,
but the authoritative work is "The C++ Programming Language", 3rd
edition or later, Bjarne Stroustrup.
> Which on is best geared to get started with, up to speed quickly, etc.
If you want to get up to speed quickly, have a look at Visual Basic or
Klik-n-Play.
> I am running XP Professional on an HP notebook with 1 gig of RAM.
That's nice. I am running five different operating systems on five
different machines, including a Sun SparcStation and a Digital, and I
write C programs that run quite cheerfully, without modification, on all
of them. That's the nice thing about portability - it doesn't matter
tuppence what you're running.
--
Richard Heathfield : bin...@eton.powernet.co.uk
"Usenet is a strange place." - Dennis M Ritchie, 29 July 1999.
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
K&R answers, C books, etc: http://users.powernet.co.uk/eton
> First decide which you are trying to move to: C, C++, or both. They are
> different languages, and skill in C does not imply skill in C++, nor
> does skill in C++ imply skill in C.
I am unsure as of yet and this is really the starting point. My goal is
marketability. I don't know which language is best for that. Do you have
thoughts?
> > I have VS.Net Professional and Metrowerks 8. advice on which tool is
best?
>
> Whatever. C is C. C++ is C++. It doesn't matter, from a "learning the
> language" point of view, which one you use. In fact, it would be better
> to get a bunch of compilers and make sure your programs work on all of
> them.
Good point
> but the authoritative work is "The C++ Programming Language", 3rd
> edition or later, Bjarne Stroustrup.
I'll check it out.
> > Which on is best geared to get started with, up to speed quickly, etc.
>
> If you want to get up to speed quickly, have a look at Visual Basic or
> Klik-n-Play.
Ah, I should have clarified. I don't wish to take shortcuts. I know that it
is going to take practice, learning, practice, learning, practice,
learning....
I didn't mean to imply anything else. My thought was just if there was one
book that covered a majority of the bases versus working between multiple
books, etc.
-Jason
Depends what kind of work you like doing. In the embedded world, C (of
the two, C and C++) is king at the moment. In the applications
programming world, C++ seems to have the edge. (This is based on my
experience of the UK job market, by the way, so Your Mileage May Vary.)
<snip>
> > but the authoritative work is "The C++ Programming Language", 3rd
> > edition or later, Bjarne Stroustrup.
>
> I'll check it out.
Tough read, but worth it.
> > > Which on is best geared to get started with, up to speed quickly, etc.
> >
> > If you want to get up to speed quickly, have a look at Visual Basic or
> > Klik-n-Play.
>
> Ah, I should have clarified. I don't wish to take shortcuts. I know that it
> is going to take practice, learning, practice, learning, practice,
> learning....
>
> I didn't mean to imply anything else. My thought was just if there was one
> book that covered a majority of the bases versus working between multiple
> books, etc.
Stroustrup is *the* book for C++. K&R2 (which I mentioned earlier) is
*the* book for C. If you can get to the end of either book in one piece,
you're doing just fine.
For a list of other books on C that I happen to think are worth a look,
check out http://users.powernet.co.uk/eton/clc/cbooks.html (disclaimer:
my own book on C is mentioned there, but I should add that it is *not* a
beginner's book, so it's not really what you're looking for at this
stage of your education).
For C++, apart from Stroustrup, Deitel & Deitel ("C++: How to Program")
is well worth a look, as is "Accelerated C++" by Koenig & Moo (but my -
possibly mistaken - understanding is that a grounding in C is required
for the latter).
Just a plug for a fellow Canadian. Check out metapad:
http://www.liquidninja.com/metapad/ I think you'd appreciate it :) It
was for the longest time my primary editor.
Neal
Check out those listed below my sig, FREEbies.
I found Bruce Eckel's book, 'Thinking in C++', a great aid. It covers
a little C on it's way to C++, lots of example code.
Last known addr;
URL: http://www.mindview.net/Books
[FREE DL or buy the hard copy(vol.1)]
Lots of good info in the FAQ (last link below my sig).
I use the Codemax editor built into the 'POVray for windows v3.1g'[1],
and have VIDE and Dev-C++ on the 'tools' menu. [edit (or render a
graphic scene) while you compile! <G>]. Fast development, it's a great
combination tool.
(Assuming the XP you mention is the windows NT OS.)
--
Bob R
POVrookie
[1] - POVray 3.5 - I haven't checked it out yet. They may have removed
the C | C++ support from the Codemax editor (since it's public source
now.).
--
MinGW (GNU compiler): http://www.mingw.com/
Dev-C++ IDE: http://www.bloodshed.net/
V IDE & V GUI: http://www.objectcentral.com/
POVray: http://www.povray.org/
alt.comp.lang.learn.c-c++: ftp://snurse-l.org/pub/acllc-c++/faq