int * scanffile(FILE *fp,int n){
创新互联建站长期为数千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为秀峰企业提供专业的做网站、网站制作,秀峰网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。
int i;
static int array[10]; //因为array是局部变量,随scanffile()函数的结束,该内存被释放,因此,你在之后得不到相应的数据了。 改成static静态变量就可以了!
for(i=0;in;i++){
fscanf(fp,"%d\t",array[i]);
}
for(i=0;i5;i++)
printf("%d\t",array[i]);
return array;
}
#includestdio.h
void string_cut(char s[],char c)
{int i,j;
for(i=j=0;s[i];i++)
if(s[i]!=c)s[j++]=s[i];
s[j]='\0';
}
int main()
{char s[200],ch;
gets(s);
scanf("%c",ch);
string_cut(s,ch);
printf("%s\n",s);
return 0;
}
printf("%c:%d\n",a+i,count[i]);一句有问题,a+i是一个地址,即a[i],而你要输出的是字符,当然不对!
可改为:printf("%c:%d\n",a[i],count[i]);
首先函数返回一个指针类型即返回地址。
例:
int * func(void)
{
int a= 10;
int *p = a;
return p;
}