
 NAME: SAMPLE03

 FEATURE/CONCEPTS:
 Example of a _DLL_InitTerm function.
 Exporting function entry points, using two techniques: (1) #pragma
    export and (2) module definition file.
 Exporting variables using a module definition file.

 TASK:
 Building and using a DLL.

 DESCRIPTION:
 Implements three different sorting functions: bubble sort,
 selection sort, and insertion sort.

 These functions keep track of the number of swap and
 compare operations required to do the sorting.

 PROJECT INFORMATION:

    LOCATION:
    \ibmcpp\samples\projects\compiler

    PROJECT NAME(s):
    Three sort DLL
    Sort functions

 SOURCE FILE INFORMATION:

    LOCATION:
    \ibmcpp\samples\compiler\sample03

    FILE NAME(s)   DESCRIPTION
    ------------   ------------
    MAIN03.C       The main program, which copies the unsorted array, and sorts
                   it using each of the sort functions in the SAMPLE03 DLL.
    MAIN03.DEF     Module definition file used to create MAIN03.EXE
    SAMPLE03.H     The file to be included by another source file which calls
                   the sort functions in the SAMPLE03 DLL, or which references
                   the external variables defined in the DLL.
    Makefile       Makefile to build the executable.
		   Use "nmake" to create MAIN03.EXE.
                   "nmake clean" erases the files created by nmake.

    LOCATION:
    \ibmcpp\samples\compiler\sample03\sort

    FILE NAME(s)   DESCRIPTION
    ------------   ------------
    SAMPLE03.C     The source file for the functions in the DLL. It contains
                   the code for:
                   - Three sorting functions: bubble, insertion, and selection
                   - Two static functions, swap and compare, that are called
                     by the sorting functions
                   - a function, list, that lists the contents of an array
    INITTERM.C     C source for the DLL initialization/termination routine.
                   When called to perform initialization, this function gets
                   storage for an array of integers, and initializes its
                   elements with random integers.  At termination time, it
                   frees the array.
    SAMPLE03.H     The file to be included by another source file which calls
                   the sort functions in the SAMPLE03 DLL, or which references
                   the external variables defined in the DLL.
    SAMPLE03.DEF   Module definition file used to create SAMPLE03.DLL


 SOFTWARE/HARDWARE PREREQUISITES:
 The DLL that is created in the sort directory is moved into the sample03
 directory. Set sample03 as the current directory to run MAIN03.EXE. In order
 for the system to find the SAMPLE03.DLL, the LIBPATH setting in CONFIG.SYS
 must include the current directory (i.e., ".;" must be specified).
  
