我正在尝试编写代码,使用 getline() 和 strchr() 函数在屏幕上的文本文件中复制和打印单词。所以这是我的代码:
void read_teams(char* text)
{
FILE *fp=fopen(text,"r");
char* tname=NULL;
size_t tname_size=0;
while(getline(&tname,&tname_size,fp)!=EOF)
{
tname[strchr(tname,'\n')-tname]='\0';
printf("%s\n",tname);
}
fclose(fp);
}
当读取 strchr 函数时,它显示:
Segmentation fault (core dumped)
所以为什么?我必须将此功能与 getline 一起使用,所以请不要告诉我以其他方式编写代码。