“C 语言中的十进制数 012”这句话本身就是错误的!C 语言中没有专门表示二进制的方法。数字前面加 0,表示的八进制数。例如:012 表示的不是十进制,而是八进制,由于 2 的 3 次方等于 8,因此八进制和二进制之间的转换关系就是:从右往左,每三位一组,就是二进制。因此,八进制的 012 转换成二进制数就是:1010(即:000 001 010 )。
而 12 表示的才是真正我们平时所说的十进制数字 12。
C语言中的012 是8进制与12是十进制数,至于转换,看我这个回答,里面什么进制转换都说的很清楚。网页链接
012为八进制,表示1*8+2 =10就是十进制的10。
转为byte型