当显示变量“int a = 011”的值时,我得到9.为什么?
发布时间:2020-12-16 06:49:26 所属栏目:百科 来源:网络整理
导读:参见英文答案 What does it mean when a numeric constant in C/C++ is prefixed with a 0?????????????????????????????????????7个 ???????????? printf with “%d” of numbers starting with 0 (ex “0102”) giving unexpected answer (ex ‘“66”)???
参见英文答案 >
What does it mean when a numeric constant in C/C++ is prefixed with a 0?????????????????????????????????????7个
>???????????? printf with “%d” of numbers starting with 0 (ex “0102”) giving unexpected answer (ex ‘“66”)????????????????????????????????????3个 使用此代码段: int a = 011; printf("a = %d",a); 为什么是结果
解决方法
011是八进制值,其十进制等效值为9.前面的整数字面值为0表示八进制值. 使用printf中的%o说明符以八进制形式打印值.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |