ファイルから各行を取得し、いくつかの文字列操作を実行しようとしています。しかし、私のコードはセグメンテーションフォールトをスローします。ある行で別のプログラムと同じものをテストしましたが、正常に動作します。しかし、ファイルから読み取って文字列操作操作を行うと、セグメンテーション違反が発生します。
変数宣言:
char *pch3,str1[100],str2[100]
pch3 = strtok(line3,",");
while(pch3!=NULL)
{
if(strcmp(pch3,"?") == 0)
{
strcat(str1,"0");
strcat(str1,",");
}
else
{
strcat(str1,pch3);
strcat(str1,",");
}
pch3 = strtok(NULL,",");
}
strlen1=strlen(str1);
memcpy(str2,str1,strlen1-1);
fp2=fopen("breast-cancer-wisconsin-miscellaneous-cleansed.data","a");
fprintf(fp2,"%s\n",str2);
fclose(fp2);