Other Available Resources

C++ is one of the most widely used computer languages, so there are many places to obtain help and further information. Here is a partial list of sources.

Books

General

There are many books written on general C++ which range from being simple to being very advanced. There are books which help people who know other programming languages (such as FORTRAN or Pascal) convert to C++. Most books seem to cover the same topics in pretty much the same way, so the best books are usually those with the best examples. I find books that contain the complete source code (rather than snippets) for examples are more helpful. Some books provide the source code on a floppy or a CD, and sometimes the source code is available at an ftp site.

A very good source of scientific programs is Numerical Recipes in C: The Art of Scientific Computing by Press, Teukolsky, Vettering, and Flannery (Cambridge University Press). This book contains the source code and descriptions of many numerical methods commonly used. It is advanced.

If you have have access to C and C++ books which are several years old, please be aware that code which was once acceptable may now generate warnings or errors. (Also, the computational finance code may not compile under old compilers.) The ANSI-C standard was implemented in 1990 to unify C source code, and the ANSI-C++ standard is still evolving. Older books may not be compatible with recent changes to these standards. Several compilers can handle the "old way" of doing things, but they are not required to do so in general.

Specific

Turbo C++, Borland C++, and Microsoft Visual C++ have a large number of books written specifically about them since they are popular among developers. These books typically focus on how to design programs with pleasing user interfaces, but this is not the focus of our class. Example code in these books may not be portable across platforms or even across compilers since it may rely on unique features of the compiler.

The Borland-endorsed guide to Turbo C++ is Teach Yourself Turbo C+ 4.5 for Windows in 21 Days by Craig Arnush. In my opinion, the book does not spend enough time describing the basics of the Turbo C++ IDE to be useful for this class. The book has quite a few complete examples, especially in the sections that discuss Windows programming.


Internet

FTP and WEB

The Internet has an incredible amount of information, especially pertaining to C/C++. The document ``Learn C/C++ Today'' provides information about several internet sources; it is available via ftp from
ftp://rtfm.mit.edu/pub/usenet/news.answers/C-faq/learn-c-cpp-today
This site is usually busy; however, the following WEB page provides the document in hypertext format:
http://vinny.csd.mu.edu
Another jumping point to various locations is The C++ Virtual Library:
http://info.desy.de/user/projects/C++.html
Finally, a useful site for those who use GNU C++ or UNIX:
http://www.eecs.nwu.edu/unix.html

There are many Internet locations from which you can download source code for a variety of uses. A good way to find these locations is through a search engine, such as Yahoo in Netscape. Be aware that some source code is written for particular platforms and may not be portable. You should be suspicious of this source code since it generally is not required to be debugged.

The GNU project of the Free Software foundation has ported a large number of UNIX-originated utilities to MS-DOS, such as emacs, vi, ctags, sed, etc. You may be interested in obtaining these utilities if you have used them before in a UNIX setting. Again, Yahoo is a good way of locating these programs. Another good starting point is the ftp site

ftp://wuarchive.wustl.edu/systems

Usenet Groups

There are Usenet groups for nearly every conceivable topic, and Usenet is available in the computer lab via Netscape. Groups relevant to this class include

comp.lang.c++.moderated
comp.std.c++
comp.std.c
comp.lang.c++
comp.lang.c
gnu.g++.help
gnu.g++.announce

but there are probably many more which you will find helpful. If you have problems, you can post questions to an appropriate group. Some of groups are monitored by people who write the C++ compilers for Borland and Microsoft. However, readers of these groups can be quite unforgiving if you ask questions of the wrong group or which are contained in the FAQs (Frequently Asked Questions).

Technical Support

Companies such as Borland and Microsoft provide technical support for their compilers. They provide telephone numbers, and I have heard that the typical response time to e-mail is quite short. Here is the HTML page for Turbo C++ 4.5:
http://www.borland.com/Product/Lang/turboc45/turboc45.html