Dec 132017
C User's Journal Listings for 2/94.
File CUJ9402.ZIP from The Programmer’s Corner in
Category Files from Magazines
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:



! = 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

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:

(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

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

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
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
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
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

Leave a Reply