int hexToDex(int hex){
int data[20]
int i=0,j=0
int dec = 0
do{
data[i++] = hex%16
hex/=16
}while(hex >0)
for(j=i-1j>=0j--){
if(data[j] <= 9 ){
dec = dec * 10 + data[j]
}else{
dec = -1
break
}
}
return dec
}
int main(int argc, char *argv[])
{
int hex , dec
while(scanf("戚岩握%x", &hex) !=EOF){
dec = hexToDex(hex)
if(dec != -1){
printf("0x%x ==>%d\n", hex, dec)
}else{
printf("0x%x ==>error, contain a~f\n", hex)
}
}
return 0
}
/*
sample input/output:
0x1
0x1 ==>高庆 1
0x23
0x23 ==>23
0x456
0x456 ==>456
0x2345
0x2345 ==>2345
0x12345
0x12345 ==>12345
0x123456
0x123456 ==>123456
0x1234567
0x1234567 ==>枣橘 1234567
0x12345678
0x12345678 ==>12345678
0x12f
0x12f ==>error, contain a~f
*/
定时器中断服务程序执行时,计数是不会自行中断的,所以编写中断服务程序一般要求是:1、要尽可能的短小
2、不要在里面延时
如果以上两点无法避免兆氏,那么可以采用暂停计腔猜好数的处理来避免出现你想象中的问伍铅题举例如下:
void t0isr() interrupt 1
{
TR0=0
TH0=(65536-10000)/256
TL0=(65536-10000)%256
TR0=1
PULSE=~PULSE
}
别人越容易阅读就越世局好。别人掘返迟越容易引用你的代码就越好。
一般一个函数不要太长,50 行以内最好,上千行的函数看见就恶心判李了。
能够复用的代码最好写成函数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)