Rit*_*Dey -1 c int decimal octal
你能解释一下吗?为什么它给出了56个值作为输出?
#include <stdio.h>
#include <conio.h>
void main()
{
int x = 070;
printf("%d", x);
getch();
}
Run Code Online (Sandbox Code Playgroud)
Sou*_*osh 16
以...开头的任何整数文字(整数常量)0都是八进制表示.
引用C11,章节§6.4.4.1,整数常量
octal-constant:0
八进制常数 八进制数
并且,根据章节§7.21.6.1,对于%d格式说明符printf(),(强调我的)
d,i该int参数转换为有符号的十进制 [...]
因此,八进制70 ==十进制56.
| 归档时间: |
|
| 查看次数: |
210 次 |
| 最近记录: |