Dec 132017
C User’s Journal Listings for 2/94. | |||
---|---|---|---|
File Name | File Size | Zip Size | Zip Type |
!CDC1202.001 | 51 | 51 | stored |
!README | 4124 | 1861 | deflated |
ALLISON.ZIP | 4682 | 4136 | deflated |
FILENAME.TXT | 7134 | 2559 | deflated |
GAGE.ZIP | 2687 | 2623 | deflated |
HEINTZE.ZIP | 1505 | 1435 | deflated |
LABROCCA.ZIP | 3288 | 3021 | deflated |
LETTERS.ZIP | 1086 | 1006 | deflated |
OTTO.ZIP | 5027 | 4934 | deflated |
PLAUGER.ZIP | 1788 | 1177 | deflated |
SAKS.ZIP | 2213 | 1951 | deflated |
SMITH.ZIP | 9089 | 8585 | deflated |
UNZIP.EXE | 29378 | 29021 | deflated |
Download File CUJ9402.ZIP Here
Contents of the FILENAME.TXT file
************************* MASTER CODE ***************************************
The name of the first file in this disk's directory identifies the volume,
issue number and revision of the disk. The format of this filename is:
!CDmvvii.rrr
where
! = the '!' character
m = C for C Users Journal, W for Windows/DOS Developer's Journal
vv = volume
ii = issue
rrr = revision (001 for initial release, 002 for next update, etc.)
The file UPDATE.DOC contains information about any additions or
corrections to material on the disk since the original magazine
publication.
If you have obtained this code from a floppy diskette or from CompuServe, the
headings under the column "FILENAME" represent the names of .ZIP files. All
files listed under the filename are archived in the .ZIP file.
If you have obtained this code from UUNET, the headings under the column
"FILENAME" represent the names of subdirectories. All files listed under the
"filename" are included in a subdirectory of that name.
Keywords: C C++ Compression Pattern Printable Bit Archive
The code listings for the February 1994 issue of The C Users Journal
include source for Philip Gage's Byte Pair Compression algorithm, Erick
Otto's text pattern matching, Thad Smith III's
binary-to-printable-character encoding algorithm, Siegfried Heintze's
class for bit arrays, and Pat LaBrocca's self-extracting archive.
************************* FILE DESCRIPTION **********************************
The following files are included in the disk:
FILENAMEAUTHOR-NAMETITLE PAGE
(Zip archive/
subdirectory name)
-------------------------------------------------------------------------------
plauger P.J. PlaugerStandard C10
xmsg.h - listing 1, A class to handle exceptions
reraise.h - listing 2, Definition of class reraise
xlogic.h - listing 3, A derived class to handle logic errors
xruntime.h - listing 4, A derived class to handle runtime errors
xdomain.h - listing 5, A derived class to handle domain errors
xrange.h - listing 6, A derived class to handle range errors
badcast.h - listing 7, A class to handle bad dynamic casts
saks Dan SaksStepping Up to C++87
mix.h - listing 1, A class hierarchy that mixes virtual and
non-virtual overriding
testmix.cpp - listing 2, A test program for the hierarchy in
mix.h (listing 1)
overload.h - listing 3, A class with overloaded virtual functions
hides.cpp - listing 4, Demonstrates how a declaration in an
inner scope hides all functions with the same name
in an outer scope
partial.h - listing 5, A class hierarchy that overrides some but
not all overloaded virtual functions
testpart.cpp - listing 6, A test program for partial.h (listing 5)
gagePhilip GageA New Algorithm for 23
Data Compression
compress.c - listing 3, The compression program
expand.c - listing 4, The expansion program
ottoErick OttoTwo Fast Pattern-Matching39
Algorithms
bm.c - listing 1, The Boyer and Moore algorithm
bzyatg.c - listing 2, The Beaza-Yates and Gonnet algorithm
freq.c - listing 3, Generates a header file with frequency
distribution of specified file
smithThad Smith IIICoding with Printable51
Characters
code13_2.c - listing 1, Codes 13-bit values into two characters
conv2_13.c - listing 2, Translates two characters back to 13 bits
calc9_11.c - listing 3, Calculation to encode 9 input bytes into
11 characters
baz.h - listing 4, External definitions of BAZ routines
bazcom.h - listing 5, Internal definitions for BAZ routines
ebaz.c - listing 6, Code to convert 9 bytes to 11 characters
dbaz.c - listing 7, Decodes 9 bytes from 11 characters
crc16.h - listing 8, Header for 16-bit CRC calculation
crc16g.h - listing 9, Calculates the CRC, a block at a time
baz.c - listing 10, Encodes binary file to BAZ911 file
zab.c - listing 11, Decodes BAZ911-encoded file
heintze Siegfried HeintzeIntuitive Access to67
Bit Arrays
bitarr.h - listing 1, Definition of classes BitField and
BitArray
bitarr.cpp - listing 2, Demonstrates operation of bit arrays
labroccaP. J. LaBroccaA Self-Extracting75
Archive for MS-DOS
sea.h - listing 1, Prefix header structure
arch.c - listing 2, Archiver
extr.c - listing 3, Extraction module
makefile.mak - listing 4, Makefile for arch.exe and extr.exe
remake.bat - listing 5, A batch file to check MagicNumber
remake.awk - listing 6, An awk file to check the size
of MagicNumber
allisonChuck AllisonCode Capsules: Variable-Length103
Argument Lists
max1.c - listing 1, A function to find the largest
of n integers
vargs1.c - listing 2, A function to extract integer/string
argument pairs
vargs2.c - listing 3, Encapsulates the parameter extraction
logic
vargs3.c - listing 4, Uses macros in stdarg.h to process
variable-length argument lists
max2.c - listing 5, Implements maxn via the stdarg macros
concat.c - listing 6, A function to concatenate a variable
number of strings
tblrow.c - listing 7, Uses a va_list to populate tables
fatal.c - listing 8, Uses vprintf to exit program with error
message
prepend.c - listing 9, Demonstrates use of prepend function
preprint.c - listing 10, Functions to build strings backwards
commas.c - listing 11, Uses prepend and preprintf functions to
format numbers with comma separators
lettersLetters to EditorWe Have Mail118
dyn2darr.c - not listed in magazine, submitted by Steve Coffman
as improvement to P.J LaBrocca's code (see "Dynamic
Two-Dimensional Arrays," by P.J. LaBrocca, CUJ,
November 1993, page 72.
dyn2darr.h - not listed in magazine, submitted by Steve Coffman
as improvement to P.J. LaBrocca's code
******************************************************************************
If you have questions regarding to the disk, please call or write us.
-----------------------------------------------------------------------------
R&D Publications, Inc.
1601 W. 23rd St. Suite 200
Lawrence, KS 66046
(913) 841-1631
-----------------------------------------------------------------------------
The name of the first file in this disk's directory identifies the volume,
issue number and revision of the disk. The format of this filename is:
!CDmvvii.rrr
where
! = the '!' character
m = C for C Users Journal, W for Windows/DOS Developer's Journal
vv = volume
ii = issue
rrr = revision (001 for initial release, 002 for next update, etc.)
The file UPDATE.DOC contains information about any additions or
corrections to material on the disk since the original magazine
publication.
If you have obtained this code from a floppy diskette or from CompuServe, the
headings under the column "FILENAME" represent the names of .ZIP files. All
files listed under the filename are archived in the .ZIP file.
If you have obtained this code from UUNET, the headings under the column
"FILENAME" represent the names of subdirectories. All files listed under the
"filename" are included in a subdirectory of that name.
Keywords: C C++ Compression Pattern Printable Bit Archive
The code listings for the February 1994 issue of The C Users Journal
include source for Philip Gage's Byte Pair Compression algorithm, Erick
Otto's text pattern matching, Thad Smith III's
binary-to-printable-character encoding algorithm, Siegfried Heintze's
class for bit arrays, and Pat LaBrocca's self-extracting archive.
************************* FILE DESCRIPTION **********************************
The following files are included in the disk:
FILENAMEAUTHOR-NAMETITLE PAGE
(Zip archive/
subdirectory name)
-------------------------------------------------------------------------------
plauger P.J. PlaugerStandard C10
xmsg.h - listing 1, A class to handle exceptions
reraise.h - listing 2, Definition of class reraise
xlogic.h - listing 3, A derived class to handle logic errors
xruntime.h - listing 4, A derived class to handle runtime errors
xdomain.h - listing 5, A derived class to handle domain errors
xrange.h - listing 6, A derived class to handle range errors
badcast.h - listing 7, A class to handle bad dynamic casts
saks Dan SaksStepping Up to C++87
mix.h - listing 1, A class hierarchy that mixes virtual and
non-virtual overriding
testmix.cpp - listing 2, A test program for the hierarchy in
mix.h (listing 1)
overload.h - listing 3, A class with overloaded virtual functions
hides.cpp - listing 4, Demonstrates how a declaration in an
inner scope hides all functions with the same name
in an outer scope
partial.h - listing 5, A class hierarchy that overrides some but
not all overloaded virtual functions
testpart.cpp - listing 6, A test program for partial.h (listing 5)
gagePhilip GageA New Algorithm for 23
Data Compression
compress.c - listing 3, The compression program
expand.c - listing 4, The expansion program
ottoErick OttoTwo Fast Pattern-Matching39
Algorithms
bm.c - listing 1, The Boyer and Moore algorithm
bzyatg.c - listing 2, The Beaza-Yates and Gonnet algorithm
freq.c - listing 3, Generates a header file with frequency
distribution of specified file
smithThad Smith IIICoding with Printable51
Characters
code13_2.c - listing 1, Codes 13-bit values into two characters
conv2_13.c - listing 2, Translates two characters back to 13 bits
calc9_11.c - listing 3, Calculation to encode 9 input bytes into
11 characters
baz.h - listing 4, External definitions of BAZ routines
bazcom.h - listing 5, Internal definitions for BAZ routines
ebaz.c - listing 6, Code to convert 9 bytes to 11 characters
dbaz.c - listing 7, Decodes 9 bytes from 11 characters
crc16.h - listing 8, Header for 16-bit CRC calculation
crc16g.h - listing 9, Calculates the CRC, a block at a time
baz.c - listing 10, Encodes binary file to BAZ911 file
zab.c - listing 11, Decodes BAZ911-encoded file
heintze Siegfried HeintzeIntuitive Access to67
Bit Arrays
bitarr.h - listing 1, Definition of classes BitField and
BitArray
bitarr.cpp - listing 2, Demonstrates operation of bit arrays
labroccaP. J. LaBroccaA Self-Extracting75
Archive for MS-DOS
sea.h - listing 1, Prefix header structure
arch.c - listing 2, Archiver
extr.c - listing 3, Extraction module
makefile.mak - listing 4, Makefile for arch.exe and extr.exe
remake.bat - listing 5, A batch file to check MagicNumber
remake.awk - listing 6, An awk file to check the size
of MagicNumber
allisonChuck AllisonCode Capsules: Variable-Length103
Argument Lists
max1.c - listing 1, A function to find the largest
of n integers
vargs1.c - listing 2, A function to extract integer/string
argument pairs
vargs2.c - listing 3, Encapsulates the parameter extraction
logic
vargs3.c - listing 4, Uses macros in stdarg.h to process
variable-length argument lists
max2.c - listing 5, Implements maxn via the stdarg macros
concat.c - listing 6, A function to concatenate a variable
number of strings
tblrow.c - listing 7, Uses a va_list to populate tables
fatal.c - listing 8, Uses vprintf to exit program with error
message
prepend.c - listing 9, Demonstrates use of prepend function
preprint.c - listing 10, Functions to build strings backwards
commas.c - listing 11, Uses prepend and preprintf functions to
format numbers with comma separators
lettersLetters to EditorWe Have Mail118
dyn2darr.c - not listed in magazine, submitted by Steve Coffman
as improvement to P.J LaBrocca's code (see "Dynamic
Two-Dimensional Arrays," by P.J. LaBrocca, CUJ,
November 1993, page 72.
dyn2darr.h - not listed in magazine, submitted by Steve Coffman
as improvement to P.J. LaBrocca's code
******************************************************************************
If you have questions regarding to the disk, please call or write us.
-----------------------------------------------------------------------------
R&D Publications, Inc.
1601 W. 23rd St. Suite 200
Lawrence, KS 66046
(913) 841-1631
-----------------------------------------------------------------------------
December 13, 2017
Add comments