home *** CD-ROM | disk | FTP | other *** search
/ Kyūkyoku!! X68000 Emulator / X68000Book.dat / mac / OLS / X68000 / Ko-Window / kow142s.lzh / corlib / mkstrbks.c < prev    next >
Text File  |  1995-02-04  |  660b  |  41 lines

  1. /*    Copyright 1993 H.Ogasawara (COR.)    */
  2.  
  3. enum { FALSE, TRUE };
  4.  
  5. /*mkstrbks*/
  6. StringGetEsc( str, ptr )
  7. unsigned char    *str,
  8.         *ptr;
  9. {
  10.     int    kanji= FALSE;
  11.     for(; *ptr ;){
  12.         if( kanji ){
  13.             kanji= FALSE;
  14.         }else{
  15.             if( KanjiIsDbcs(*ptr) )
  16.                 kanji= TRUE;
  17.             else if( *ptr == '\\' ){
  18.                 switch( *++ptr ){
  19.                 case 'r':
  20.                     *str++= '\r';
  21.                     ptr++;
  22.                     continue;
  23.                 case 'n':
  24.                     *str++= '\n';
  25.                     ptr++;
  26.                     continue;
  27.                 case 'x':
  28.                     ptr++;
  29.                     *str++=
  30.                     (((*ptr>'9'?*ptr-7:*ptr)&15)<<8)+
  31.                     ((ptr[1]>'9'?ptr[1]-7:ptr[1])&15);
  32.                     ptr+= 2;
  33.                     continue;
  34.                 }
  35.             }
  36.         }
  37.         *str++= *ptr++;
  38.     }
  39.     *str= '\0';
  40. }
  41.