1 /**** << comment & keyword processor >> **** 2 * 3 * euc.h 4 * Aug 16 1993 5 * mod: Aug 19 1993 6 ************************************************** tonooka ***********/ 7 /* 8 * @(#)euc.h 2.1 (Y.Tonooka) 11/29/93 9 */ 10 11 #define EUC /* ISO (ASCII) or EUC */ 12 13 #include <stdio.h> 14 15 #if defined EUC 16 /********************************************************************** 17 * * 18 * EUC * 19 * * 20 **********************************************************************/ 21 typedef unsigned short char_t; 22 23 extern int pcode(); 24 25 extern int geteucc(); 26 #define geteucchar() geteucc(stdin) 27 extern char_t *fgeteucs(); 28 29 extern int puteucc(); 30 #define puteucchar(c) puteucc(c, stdout) 31 extern int fputeucs(); 32 33 extern int euccol(); 34 35 extern int streuclen(); 36 extern int euccmp(); 37 extern int euccasecmp(); 38 39 extern char_t *stow(); 40 extern char_t *eucdup(); 41 42 #else 43 /********************************************************************** 44 * * 45 * ASCII & ISO * 46 * * 47 **********************************************************************/ 48 typedef unsigned char char_t; 49 50 #define geteucc(fp) getc(fp) 51 #define geteucchar(fp) getchar(fp) 52 #define fgeteucs(buf, n, fp) ((char_t *) fgets(buf, n, fp)) 53 54 #define puteucc(c, fp) putc(c, fp) 55 #define puteucchar(c) putchar(c) 56 #define fputeucs(s, fp) ((char_t *) fputs(s, fp)) 57 58 #define euccol(c) 1 59 60 extern int strlen(); 61 #define streuclen(s) strlen(s) 62 extern int strcmp(), strcasecmp(); 63 #define euccmp(s1, s2) ((char_t *) strcmp(s1, s2)) 64 #define euccasecmp(s1, s2) ((char_t *) strcasecmp(s1, s2)) 65 66 extern char *strdup(); 67 #define stow(s) ((char_t *) strdup(s)) 68 69 #define eucdup(s) ((char_t *) strdup(s)) 70 71 #endif 72