static void putstr(int mode, STR tp) { if (mode == ESCOFF) { fprintf(cur_fpo, "%s", tp); } else if (*tp == '\0') { fprintf(cur_fpo, "||"); // ヌル文字列を表す } else { if (num(tp)) { // read.h fputc('\\', cur_fpo); // 数値ではなく数字の場合は見分けるために'\\'を接頭辞としてつける } do { if (iskanji(*tp) && iskanji2(*(tp+1))) { fputc(*tp++, cur_fpo); fputc(*tp++, cur_fpo); } else if (!isprkana(*tp)) { fprintf(cur_fpo, "#\\%03d", *tp++); } else { if (isesc(*tp)) { fputc('\\', cur_fpo); } fputc(*tp++, cur_fpo); } } while (*tp != '\0'); } }
_WCRTLINK int _ismbbprint( unsigned int ch ) { if( __MBCodePage == 932 ) { return( isprkana( ch ) ); } else { return( _ismbcprint( ch & 0xFF ) ); } }
void main() { int i; for( i = 0; i < SIZE; i++ ) { printf( "Char is %sa single-byte " "printable character\n", ( isprkana( chars[i] ) ) ? "" : "not " ); } }
static void putstr(int mode, STR tp) {//N// if(mode == ESCOFF) { fprintf(cur_fpo, "%s", tp); } else if(*tp == '\0') { fprintf(cur_fpo, "||"); } else { if(num(tp)) { fputc('\\', cur_fpo); } do { if(iskanji(*tp) && iskanji2(*(tp+1))) { fputc(*tp++, cur_fpo); fputc(*tp++, cur_fpo); } else if(!isprkana(*tp)) { fprintf(cur_fpo, "#\\%03d", *tp++); } else { if(isesc(*tp)) { fputc('\\', cur_fpo); } fputc(*tp++, cur_fpo); } } while(*tp != '\0'); } }