MAGAZINE\SELF.C ·
C ·
3 KB ·
1991-05-13 ·
from PCPlus_Issue-61_October-1991_FluxEngine-360Kb
int x[] = {
'#',
'i',
'n',
'c',
'l',
'u',
'd',
'e',
' ',
'<',
's',
't',
'd',
'i',
'o',
'.',
'h',
'>',
'\n',
'm',
'a',
'i',
'n',
'(',
')',
'\n',
'{',
'\n',
'i',
'n',
't',
' ',
'i',
';',
'\n',
'i',
'n',
't',
' ',
'*',
'y',
'=',
'x',
',',
'*',
'z',
'=',
'x',
';',
'\n',
'\n',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
'i',
'n',
't',
' ',
'x',
'[',
']',
' ',
'=',
' ',
'{',
'\\',
'n',
'\'',
'%',
'c',
'\'',
'"',
',',
'*',
'y',
')',
';',
'\n',
'w',
'h',
'i',
'l',
'e',
' ',
'(',
'*',
'+',
'+',
'y',
')',
'\n',
' ',
'{',
'\n',
' ',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
',',
'\\',
'n',
'"',
')',
';',
'\n',
' ',
's',
'w',
'i',
't',
'c',
'h',
' ',
'(',
'*',
'y',
')',
'\n',
' ',
' ',
'{',
'\n',
' ',
' ',
'c',
'a',
's',
'e',
' ',
'\'',
'\\',
'n',
'\'',
':',
'\n',
' ',
' ',
' ',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
'\'',
'\\',
'\\',
'"',
')',
';',
'\n',
' ',
' ',
' ',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
'n',
'\'',
'"',
')',
';',
'\n',
' ',
' ',
' ',
'b',
'r',
'e',
'a',
'k',
';',
'\n',
' ',
' ',
'c',
'a',
's',
'e',
' ',
'\'',
'\\',
'\'',
'\'',
':',
' ',
'\n',
' ',
' ',
' ',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
'\'',
'\\',
'\\',
'\'',
'"',
')',
';',
'\n',
' ',
' ',
' ',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
'\'',
'"',
')',
';',
'\n',
' ',
' ',
' ',
'b',
'r',
'e',
'a',
'k',
';',
'\n',
' ',
' ',
'c',
'a',
's',
'e',
' ',
'\'',
'\\',
'\\',
'\'',
':',
'\n',
' ',
' ',
' ',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
'\'',
'\\',
'\\',
'"',
')',
';',
'\n',
' ',
' ',
' ',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
'\\',
'\\',
'\'',
'"',
')',
';',
'\n',
' ',
' ',
' ',
'b',
'r',
'e',
'a',
'k',
';',
'\n',
' ',
' ',
'd',
'e',
'f',
'a',
'u',
'l',
't',
':',
'\n',
' ',
' ',
' ',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
'\'',
'%',
'c',
'\'',
'"',
',',
'*',
'y',
')',
';',
'\n',
' ',
' ',
' ',
'b',
'r',
'e',
'a',
'k',
';',
'\n',
' ',
' ',
'}',
'\n',
' ',
'}',
'\n',
'p',
'r',
'i',
'n',
't',
'f',
'(',
'"',
',',
'\\',
'n',
'\'',
'\\',
'\\',
'0',
'\'',
'}',
';',
'\\',
'n',
'"',
')',
';',
'\n',
'\n',
'w',
'h',
'i',
'l',
'e',
' ',
'(',
'*',
'z',
' ',
'!',
'=',
' ',
'0',
')',
'\n',
' ',
'p',
'u',
't',
'c',
'h',
'a',
'r',
'(',
'*',
'z',
'+',
'+',
')',
';',
'\n',
'}',
'\n',
'\0'};
#include <stdio.h>
main()
{
int i;
int *y=x,*z=x;
printf("int x[] = {\n'%c'",*y);
while (*++y)
{
printf(",\n");
switch (*y)
{
case '\n':
printf("'\\");
printf("n'");
break;
case '\'':
printf("'\\'");
printf("'");
break;
case '\\':
printf("'\\");
printf("\\'");
break;
default:
printf("'%c'",*y);
break;
}
}
printf(",\n'\\0'};\n");
while (*z != 0)
putchar(*z++);
}