指针程序怎么不能运行
#include<stdio.h>#include<malloc.h>
int zhar(char *s,int a[])
{
int n=0;
long d;
while(*s!='\0')
{
while(*s<'0'||*s>'9')
s++;
d=0;
while(*s>='0'||*s<='9')
{
d=10*d+(*s-'0');
s++;
}
a[n]=d;
n++;
}
return n;
}
main()
{
char *s;
int a[10],n,i;
s=(char *)malloc(100);
printf("输入一组字符串:");
gets(s);
n=zhar(s,a);
printf("整数个数:%d\n",n);
printf("输出整数:");
for(i=0;i<n;i++)
printf("%d",a[i]);
}