下面这段代码是用C语言实现的,用来把double转成int数组。发现个小问题:
如果"a=12345670"的时候转换是ok的,如果"a=01234567"转换就有问题。
大家可以试一下,希望有人能解答一下为什么。
double a = 12345670;
char s]="";
int *x;
sprintf(s,"%.0lf",a);
unsigned long len = strlen(s);
x = (int*)malloc(sizeof(int)*len);
for (int i=0; i<len; i++) {
x*=s*-'0';
printf("%d\n", x*);
}
free(x);
```***