[求助]进制转换问题
进制转换问题:八进制转换成十进制main()
{
char s[6],*p;
int n;
p=s;
n=0;
printf("\n========== intput 8jinzhishu ==========\n");
scanf("%s",p);
while(*p!='\0')
{
n=n*8+*p-'0';
p++;
}
printf("\n==========\n");
printf("\n%d",n);
getch();
}
问题就是“n=n*8+*p-'0';“
中的”-‘0’“是什么意思,不明白。但是去掉它运行时得到的结果就错,有了就不出错。