完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
本帖最后由 dianziyn 于 2013-1-18 12:11 编辑
一个很简单的if语句,但是就是不知道什么地方错了,总也不对,请坛友们看看 想要达到的目的是:将一个已知的16进制数转换成10进制,然后判断这个10进制数的十位是几,因为已知的16进制数大小的关系,转成10进制的十位只有0,1,2,3这几种个能,当十位是0时,led0亮;是1时,led1亮;是2时,led2亮;是3时,led亮。 判断语句是这么写的 if(十位==0)led0亮; else if(十位==1)led1亮; …… 但奇怪的是不论我的16进制数给的是多少,都是led0亮。 我以为是不是我的16转10进制代码有问题,导致后面的结果不对,但是通过串口我看到根据给的16进制数不同,转换结束后我可以得到正确的十位。 为什么在串口看到的正确的数,但是紧接着判断if语句时就总也不对呢?我很纳闷啊,请大家指教啊 问题搞定了。昨天迷迷糊糊的,今天早上又仔细看了遍发现问题了,我把转好的十进制进行ASCII码调整了 +0x30,结果就得不到0,1,2,3了。还是细心重要啊 |
|
相关推荐
9个回答
|
|
|
这是什么实验呀?
|
|
|
|
|
|
|
|
|
|
|
|
进制转换应该是没有问题,我用串口看过了,十位是 %100/10求出来的 |
|
|
|
|
|
那就换一种,用switch,case语句试试看 |
|
|
|
|
|
上相关代码好些!
|
|
|
|
|
|
|
|
|
上代码看吧,这么说怎么看?
|
|
|
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
24 浏览 0 评论
567 浏览 0 评论
735 浏览 0 评论
901 浏览 0 评论
840 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
17069 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-15 14:09 , Processed in 1.241256 second(s), Total 86, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3231