void main( ){ int k=011; printf("%d尀n",k++); } 这里的K怎么回事,为什么最后结果是9

2024年11月28日 20:45
有2个网友回答
网友(1):

k的值为011,011和11是不一样的概念,C里面,011是八进制的表现形式,011转化成十进制是9,k++是先抛出在自加,所以输出的值是9

网友(2):

int k=011;
数字前加0代表的是八进制数。格式为\0ddd,每个d代表是0~7的数字,
则程序中的k的十进制数为9。
输出语句中k++是先参与运算后自增。则输出为9