Keywords: Sep97 C C+ algorithms CGI compression templates DLL auto_ptr The code listings for the September 1997 issue of C/C++ Users Journal include source code for Philip Gage's randome access data compression technique, John Ruark's templatized network-flow algorithm framework, Bob Kamins' technique for sending email from a CGI program, and Angelika Langer's article on internationalization in C++. Also included is source code from P.J. Plauger's column, Standard C/C++, Dan Saks' column, C++ Theory and Practice, and Bobby Schmidt's column, The Learning C/C++urve. ************************* FILE DESCRIPTION ********************************** The following files are included in the disk: FILENAME AUTHOR-NAME TITLE (Zip archive/ subdirectory name) ------------------------------------------------------------------------------- gage Philip Gage Randome Access Data Compression compress.c - listing 1, Byte pair encoding compression expand.c - listing 2, Byte pair encoding decompression browse.c - listing 3, Byte pair encoding file browser optcomp.c - not listed, optimized compression code optexp.c - not listed, optimized decompression code ruark John Ruark A Template-Based Network Implementation network.h - not listed, Complete version of file shown in part in Listing 1. The network class template. spath.h - not listed, Complete version of file shown in part in Listing 3. Implementation of two shortest path algorithms. sample.cpp - not listed, Complete version of file shown in part in Listing 4. Sample usage of the network template and shortest path algorithms. kamins Bob Kamins Sending Mail from a CGI Program sample.htm - listing 1, HTML code used with example program ftstcgi.c - not listed, Complete version of the file shown in part in Listing 2. A CGI program that sends email. langer Angelika Langer Internationalization Using Standard C++ locale.h - listing 1, Class locale schmidt Bobby Schmidt The Learning C/C++urve: The Pointer Variations autopnt.h - listing 1, auto_pointer base class fspnt.h - listing 2, auto_pointer using free store heappnt.h - listing 3, auto_pointer using heap fspnt.cpp - listing 4, auto_free_store_pointer implementation heappnt.cpp - listing 5, auto_heap_pointer implementation autopnt.cpp - listing 6, auto_pointer implementation saks Dan Saks C++ Theory and Practice: Work-arounds for a Mistake subtle.cpp - listing 1, A program with a subtle bug caused by name hiding lib.h - listing 2, The header that causes the name hiding in Listing 1 plauger P.J. Plauger Standard C/C++: The Header numlimit.h - listing 1, Template class numeric_limits limits - listing 2, The header