| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1373 人关注过本帖
标题:10进制转换成十六进制 有问题!
取消只看楼主 加入收藏
一刀客
Rank: 1
等 级:新手上路
帖 子:181
专家分:0
注 册:2007-10-26
收藏
 问题点数:0 回复次数:2 
10进制转换成十六进制 有问题!
还有一些函数 就只说我不懂的
typedef srtuck
{
datatype1 data[maxsize];
int top;
}seqstack;
/*顺序栈初始化操作函数*/
void initstack(seqstack *s)
{
int i;
for(i=0;i<maxsize;i++)
s->data[i]='\0';
s->top=0;
}
/*转换成十六进制,函数*/
void d_to_h(unsigned x)
{
int y;
char ch;
seqstack stack,*s
s=&stack;
initstack(s);
push(s,'#');
while(x!=0)
{ y=x%16;
if(y<10)
push(s,y)
else
{ switch(y)
{ casr 10 :push(s,'A');break;
casr 11 :push(s,'B');break;
casr 12 :push(s,'C');break;
casr 13 :push(s,'D');break;
casr 14 :push(s,'E');break;
casr 15 :push(s,'F');
}
}
x=x/16;
}
while((ch=gettop(s))!='#')
{
ch=pop(s);
if(ch<10)
printf("%d",ch);
else
printf("%c",ch);
}
}
=========================================
seqstack stack,*s
s=&stack;
initstack(s);
就是想不明白这三个语句是什么意思,为什么要这样。
大家来帮我释疑吧
搜索更多相关主题的帖子: 进制 
2007-11-08 13:48
一刀客
Rank: 1
等 级:新手上路
帖 子:181
专家分:0
注 册:2007-10-26
收藏
得分:0 
seqstack stack,*s; 产生两个实例?还是只是声明的?
s=&stack; s已经是指向seqstack的地址了,&stack也属于seqstack类型的地址 不知s=&stack;是何目的。
initstack(s); 直接seqstack *s;然后initstack(*s);这样行不行?

责人之心责己 宽己之心宽人
2007-11-08 14:11
一刀客
Rank: 1
等 级:新手上路
帖 子:181
专家分:0
注 册:2007-10-26
收藏
得分:0 
回复:(qq95620412) seqstack stack,*s; ...
太感谢了~~~~

责人之心责己 宽己之心宽人
2007-11-09 13:10
快速回复:10进制转换成十六进制 有问题!
数据加载中...
 
   



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

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