输出结果为什么是这样?
#include <stdio.h>#include <stdlib.h>
int i, j, k;
char a1[50];
int s1[50];
int main()
{
gets(a1);
for (i=strlen(a1)-1; i>=0; --i)
{
s1[i]=(a1[strlen(a1)-i-1]-'0');/*这里不是a1[strlen(a1)-i-1]减去'0'的ASCII码48吗*/
printf("%d\n",s1[i]);
}
getch();
}
输入98765
应该输出:-39;-40;-41;-42;-43但是在TC上输出:9,8,7,6,5