#include <stdio.h>
int main()
{
int number = 08;
printf("%d",number);
return 0;
}
或者如果它是无效的,为什么?
对于您在Project Euler上解决的问题,该矩阵中的前导0
只是装饰性填充,不意味着被解释为八进制或其他任何东西。
因此,如果你在代码中组合一个数字数组/矩阵,只需从你要复制的输入集中去掉前导零。
例如,代替这个假设声明:
int row1[] = {08, 02, 22, 97, 38, 15, 00, 40, 00, 75, 04, 05, 07, 78, 52, 12, 50, 77, 91, 08};
只需将您的代码声明更改为:
int row1[] = {8, 2, 22, 97, 38, 15, 0, 40, 0, 75, 4, 5, 7, 78, 52, 12, 50, 77, 91, 8};
这就是你所要做的。