#include<stdio.h>
#include<netdb.h>
#include<string.h>
int main()
{
struct servent *s;int i;
for(i=0;i<4;i++)
{
char name[100];
char pro[100];
int n;
fgets(name,99,stdin);
fgets(pro,99,stdin);
s=getservbyname(name,pro);
printf("name:%s\tport:%d",s->s_name,s->s_port);
}
return 0;
}
问题用fgets出现core dumped而用gets则正常运行,但是gets不是过时了么,所以求助fgets问题出在哪了!
但是我用gets没问题,如何解释!!而且野指针复制给只是指向malloc分配的地方,应该没问题
本回答被网友采纳