num/=10不是很理解,如果输入的数字num=86,那么86/10=8了,难道86是8位数吗?
我的问题是代码要实现输入数字的位数,但代码中的num/=10不是很理解,如果输入的数字num=86,那么86/10=8了,难道86是8位数吗?
大家可能没明白我的意思,我的问题是如果采用答案中的代码,明明就是错误的啊,因为如果采用这样的代码,难道86是8位数吗?
楼上说的不错,但是完整的理解应该是 int num=86;
那么num=num/10就等价于num=(int)(num/10)即num=int(86/10)
结果为8.6然后类型强转变为8 所以结果是num=8
num/=10可以看作num=num/10
如果 int num=86;那么num=86/10;
结果num=8
这不是除法吗
int除以int还是int所以只有整数部分