From: Robert Miles on
Is there any online way to learn C and/or C++? I'm currently unable to
drive to any school teaching them.

I'm especially interested in the CUDA variant from Nvidia.

Assume I have decades of programming experience, but not including C, C++,
or any operating system derived from Unix.

Robert Miles


From: Richard Heathfield on
Robert Miles wrote:
> Is there any online way to learn C and/or C++? I'm currently unable to
> drive to any school teaching them.

One way to do it is to learn from an online tutorial BUT most online C
tutorials are pretty ghastly. (I would be rather surprised to find that
the situation is any different for C++.) There is, however, quite a good
C tutorial here:

http://cprog.tomsweb.net/cintro.html

or, if you prefer, a former book that has now reincarnated as a Web site:

http://publications.gbdirect.co.uk/c_book/

I can recommend the first link. I cannot recommend the second because I
haven't studied it in any depth, but I've not heard any terrible things
about it (which I probably would have, if it were truly ghastly).

But your best bet, without question, is to get hold of "The C
Programming Language", 2nd Ed. Kernighan & Ritchie. Prentice Hall, 1988.
ISBN 0-13-110362-8 (paperback), or 0-13-110370-9 (hardback). Dennis
Ritchie is the author of the C language, and Brian Kernighan is a very
effective writer of tutorials. Together, they make a great team, and
this book is universally acknowledged to be /the/ tutorial for
experienced programmers who don't happen to know C.

> I'm especially interested in the CUDA variant from Nvidia.

Can't help you there, but C is C - it's governed by an international
standard. If you learn C itself, you'll be well-placed to adapt to any
variants (such as, for example, C++!).

--
Richard Heathfield <http://www.cpax.org.uk>
Email: -http://www. +rjh@
"Usenet is a strange place" - dmr 29 July 1999
Sig line vacant - apply within
From: Rui Maciel on
Robert Miles wrote:

> Is there any online way to learn C and/or C++? I'm currently unable to
> drive to any school teaching them.
>
> I'm especially interested in the CUDA variant from Nvidia.
>
> Assume I have decades of programming experience, but not including C, C++,
> or any operating system derived from Unix.

As you are an experienced programmer, you could pick up a C reference and, based on that, develop
small pet projects increasing in complexity. I've found the following reference to be useful:

http://www.acm.uiuc.edu/webmonkeys/book/c_guide/


On a side note, why pick CUDA instead of OpenCL?


Hope this helps,
Rui Maciel
From: Richard Heathfield on
Rui Maciel wrote:
<snip>

> As you are an experienced programmer, you could pick up a C reference and, based on that, develop
> small pet projects increasing in complexity. I've found the following reference to be useful:
>
> http://www.acm.uiuc.edu/webmonkeys/book/c_guide/

The first incorrect claim I found was in 1.2.2 - but it is such a nit
that I'm almost embarrassed to mention it. The claim is made that the
"first character of the variable may not be a numerical digit or
underscore". There are, in fact, certain situations in which one may use
a leading underscore. Having said that, these are best avoided, and it's
entirely possible that Eric Huss is indulging in a "lie to students"
(i.e. "life is actually more complicated than it is being painted here,
but this rule of thumb will stop you from killing yourself in the
process of learning more").

The data size section is showing its age (16-bit ints are a bit passe'
nowadays).

But I'm having to be really picky to find anything to complain about (in
the small part that I actually read). It looks on first brief inspection
like quite a good reference. (But a tutorial it ain't. The OP would be
better served with a good, accurate, well-written tutorial.)

--
Richard Heathfield <http://www.cpax.org.uk>
Email: -http://www. +rjh@
"Usenet is a strange place" - dmr 29 July 1999
Sig line vacant - apply within
From: Barry Schwarz on
On Wed, 2 Jun 2010 11:40:36 -0500, "Robert Miles"
<milesrf(a)usenet-news.net> wrote:

>Is there any online way to learn C and/or C++? I'm currently unable to
>drive to any school teaching them.
>
>I'm especially interested in the CUDA variant from Nvidia.
>
>Assume I have decades of programming experience, but not including C, C++,
>or any operating system derived from Unix.

Pick one, either C or C++. Don't try to learn both at the same time.
They are different languages with just enough similarity to produce
second rate confusion.

--
Remove del for email