| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 584 人关注过本帖
标题:程序有误
只看楼主 加入收藏
sunnyboy1983
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-2-7
收藏
 问题点数:0 回复次数:1 
程序有误
以下是我从书上看到的程序,但运行后有误,该怎样修改实现汉字的任意倍数放大)
#include<stdio.h>
#include<conio.h>
#include<graphics.h>
#include<stdlib.h>
#include<string.h>
#define SIZE 72
void fdhz(int x0,int y0,int mx,int my,int dis,int h_vdir,int color,char *s,char *lib_name)
{
int x,y;
FILE * fp;
unsigned long offset;
unsigned mxx,myy;
unsigned int qh,wh;
unsigned char *buf,*buffer;
unsigned mask=0x80,id=0;
unsigned count=0,total=0;
unsigned byte1,byte2,temp;
if(h_vdir)h_vdir=1;
mxx=getmaxx();
myy=getmayy();
if(! (fp=fopen(lib_name,"r+b"))){printf("The file not exist");exit(1);}
buf=buffer=(unsigned char *)malloc(strlen(s)*36+1);
while((temp=*s++)!=0)
if(temp>0xa0)
{
if(! id)
{
id=1;byte1=temp;
continue;
}
else{
id=0;
byte2=temp;
total++;
}
qh=byte1-0xa0;
wh=byte2-0xa0;
if(qh>15)qh=8;
else if(qh=9)qh=6;
offset=(long)((qh-1)*94+wh-1-658)*SIZE;
if(fseek(fp,offset,SEEK_SET)==NULL)
if(fread(buf,1,SIZE,fp)!=SIZE){printf("read error!");exit(1);}
buf+=SIZE;
id=0;
}
}
while (total--)/*汉字字模和各字节的各位分离并放大显示*/
{
int i,j,k,xt,yt,bit;
x=x0;
y=y0;
for(i=0;i<SIZE;i+=3,count+=3)
for(xt=0;xt<mx;xt++)
{
for(k=0;k<3;k++,count++)
{
for(j=0;j<8;j++)
{
bit=buffer[count]&mask;
for(yt=0;yt<my;yt++)
{
if(bit)
putpixel(x,y,color);
y++;
}
mask>>=1;
}
mask=0x80;
}
y=y0;
count-=3;
x++;
}
switch(dis)
{
case 0:{
x0+=24*mx+dis;
if((x0+24*mx)>mxx)
{
x0=0;
y0+=24*my+dis;
}
break;
}
case 1:{
y0+=24*my+dis;
if((y0+24*my)>myy)
{
y0=0;
x0+=24*mx+dis;
}
break;
}
}
}
free(buffer);
fclose (fp);
}
main()
{
int driver=DETECT ,mode;
initgraph(&driver,&mode,"c:\\turboc");
fdhz(200,50,2,2,6,0,14,"计算机","hzk24h");
getch();
fdhz(40,60,3,2,4,1,4,"中国","hzk24s");
getch();
closegraph();
}
搜索更多相关主题的帖子: int unsigned include 有误 
2008-04-10 20:50
huofen
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-4-11
收藏
得分:0 
太难了
不会 呵呵
2008-04-11 10:32
快速回复:程序有误
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020450 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved