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 で使用する必要があるため、別の方法でコードを書くように言わないでください。