可以的,带w的函数,是一次读、写两个字节,写一个函数就可以实现它们。经典的是_putch()和_getch(),对应ANSI编码,一次一个字节,在Unicode编码版本,一次两个字节,本身是调用两次前者得到的。留意wctype_t的数据类型,那其实是unsigned int,在32位系统中,是两个字节,所以对应的数据是4位十六进制整数。所有的字符用Unicode编码,意思是都是双字节字符。
如果你把代码的函数改成ANSI单字节的版本,也是可以的(其实这个版本本来就是从那个版本转化而来),不过那样处理汉字时比较复杂,在确认从来不处理汉字的时候,可以沿用旧式的方法。原理是一样的。