题目表述:
对于给定的一个字符串,统计其中数字字符出现的次数。
错误描述:
编译器提示段错误
但是没找出为什么会发生段错误
# include<stdio.h>
# include<string.h>
int main()
{
int i,n,len,num;
char *ch;
scanf("%d",&n);
while(n--)
{
num=0;
scanf("%s",ch);
len=strlen(ch);
for(i=0;i<len;i++)
{
if(ch[i]>='0'&&ch[i]<='9')
num++;
}
printf("%d\n",num);
}
return 0;
}
char *ch;
定义了指针,但是没有分配空间
char *ch; = (char *)malloc(100*sizeof(char));
如果问题解决,麻烦点下回答右边的采纳,谢谢
没有实例化ch指针,所以你是不能存放东西的,具体的实例化可以用1楼的方法
没有实例化ch指针,还有for循环也错了,for(i=0;i<len;i++){}
定义指针时需要分配空间,没有实例化ch指针 主要是指针问题