请大虾帮忙看看,为什么不会显示中文.
小小虫:
在程序中我用VC写中文.后用TRUBOC 2.0上运行,却显示日文,为什么?
#include"stdio.h"
#include"graphics.h"
#include"fcntl.h"
int handle;
int openhzk(void)
{ handle=open("d:\\16.fon",O_RDONLY);
if(handle==-1)
{ cputs("can't open library16");
getch();
closegraph();
exit(1);
}
}
/***************/
int puthz16(int x,int y,int z,int color,char *p)
{ unsigned int i,c1,c2,f=0;
int i1,i2,i3,rec;
long l;
char by[32];
while((i=*p++)!=0)
{
if(i>0xa1)
if(f==0)
{
c1=i-0xa1;
f=1;
}
else
{
c2=i-0xa1;
f=0;
rec=c1*94+c2;
l=rec*32;
lseek(handle,l,SEEK_SET);
read(handle,by,32);
for(i1=0;i1<16;i1++)
for(i2=0;i2<2;i2++)
for(i3=0;i3<8;i3++)
if(getbit(by[i1*2+i2],7-i3))
putpixel(x+i2*8+i3,y+i1,color);
x=x+16+z;
}
}
return(x);
}
/***********************/
int getbit(unsigned char c,int n)
{
return((c>>n)&1);
}
/*********************************************/
main()
{
int gdriver=DETECT,gmode=0;
unsigned char *f="你好吗";
initgraph(&gdriver,&gmode,"c:\\tc\\bgi");
setbkcolor(BLUE);
setcolor(LIGHTRED);
openhzk();
puthz16(230,200,2,12,f);
close(handle);
getch();
closegraph();
}
其中16.fon是16点阵汉字库,从windows\command下复制的.