问题描述:在做结构体小demo的时候,为stu对象的成员数据赋初值的时候,为int型数据sNum赋初值为我学号后3位082的时候,编译运行便报错了!invalid digit "8" in octal constant。顾名思义,八进制数中不存在082这个数字,八进制数是由0开头、1~7这7个数字组成的。
所以,我们在给数字类型数据赋初值的时候,要注意怎么赋正确的初值。
八进制数如何转成十进制数呢?和二进制数转成十进制数的方法一样的!(整数):从右到左用八进制的每个数去乘以8的相应次方!
比如0122转成十进制是多少呢?
1*8^2+2*8^1+2*8^0=64+16+2=82啦。
那么十进制如何转八进制呢?除8取余的方法!
如82:
从下往上取,就是122,再加上八进制数开头的数字0,就是0122啦!
頑張って!