/* mp1.c by Douglas Jones -- unsigned character version */ #include #include "/mnt/nfs/clasnetappvm/fs3/dwjones/mp1data.h" void printit( unsigned char * s ) { // s points to a string while (*s != '\0') { // nul marks end of string if (*s > 127) { // above ASCII means a relative substring pointer printit( s - (*s - 128) ); } else { // in ASCII range means a character */ putchar( *s ); } s++; // advance to next char } } int main() { printit( mp1data ); }