keil软件 可以跨进制进行乘除法吗?

2020-02-01 16:36发布

                          发现阿莫老大在严格审题中,不知道能不能通过?
                          比如说:直接将单片机P0*25=temp 那么temp这个数是什么进制了呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
techbaby
1楼-- · 2020-02-01 20:57
回去好好看看C语言吧!

自动数值转化
比如:char 和 int 做运算,char先转换成int类型,然后做运算。
        unsigned int 和signed int 做运算,signed int 要先转换为unsigned  int后两者再做运算。

不知道上面说的是不是全对,好久都忘了!
hyz_avr
2楼-- · 2020-02-02 02:31
 精彩回答 2  元偷偷看……
techbaby
3楼-- · 2020-02-02 06:36
LZ的写法都错了,应该是:
temp=P0*25;
temp的类型就是你定义的类型呀,编译器会将计算结果强制转换为temp变量的类型的。
chensheng00
4楼-- · 2020-02-02 07:00
techbaby 发表于 2012-12-5 14:27
回去好好看看C语言吧!

自动数值转化

额   ,我是说P0口是个16进制啊,0xXX这个类型的,可以直接乘以一个具体的数,比如说10,然后结果存在temp中,假设我是unsigned  int  temp;
chensheng00
5楼-- · 2020-02-02 11:27
techbaby 发表于 2012-12-5 14:30
LZ的写法都错了,应该是:
temp=P0*25;
temp的类型就是你定义的类型呀,编译器会将计算结果强制转换为temp ...

en  ,是写错了,强制性的啊,那就是unsigned int temp;
                                                temp=P0*25,然后这个结果和把P0转换成十进制之后与25相乘的结果一样么
techbaby
6楼-- · 2020-02-02 11:57
hyz_avr 发表于 2012-12-5 14:29
楼上的回答不是楼主问的,呵呵.

呵呵,确实是我错了。

原来问的是进制,晕喔!

一周热门 更多>