怎么从图形库输出stdin流里面的汉字内容~
这段代码能实现从图形库里面输出英文的~不过这样只能一个字节一个字节处理~那么怎么能从图形库输出汉字?~有没有高手可以实现以下?~问题是图形库似乎不能直接调用编译器默认的字库~
程序代码:
#include<graphics.h> #include<stdio.h> #include <conio.h> void main() { // 绘图环境初始化 char s[10]={0}; int i=0; int j=0; int flag=0; initgraph(640, 480); settextstyle(16, 0, _T("宋体")); { RECT r = {i*8, j*18, 640, 480}; drawtext(_T("_"), &r,DT_EDITCONTROL| DT_LEFT|DT_INTERNAL|DT_NOPREFIX); } while (1) { flag=0; s[0]=getch(); s[1]='_'; if (s[0]==27) break; else if (s[0]=='\r') { RECT r1 = {0, (j+1)*18, 640, 480}; RECT r2={i*8, j*18, 640, 480}; drawtext(_T("_"), &r1,DT_EDITCONTROL| DT_LEFT|DT_INTERNAL|DT_NOPREFIX); drawtext(_T(" "), &r2,DT_EDITCONTROL| DT_LEFT|DT_INTERNAL|DT_NOPREFIX); i=0; j++; continue; } else if (s[0]==8&&i>0) { s[0]='_'; s[1]=' '; --i; flag=1; } else if (s[0]==8) continue; if (!kbhit()||flag==1) { RECT r = {i*8, j*18, 640, 480}; drawtext(_T(s), &r,DT_EDITCONTROL| DT_LEFT|DT_INTERNAL|DT_NOPREFIX); ++i; } if (flag==1&&i>0) --i; } // 按任意键退出 // getch(); closegraph(); }
[此贴子已经被作者于2017-6-21 00:19编辑过]