このコードがセグメンテーションフォールトになっている理由を聞いてみてください。私は、テキストファイルからの入力を取得しようとしていると私は問題が何であるか把握することはできません。ファイルアクセスのセグメンテーションフォールト
using namespace std;
using namespace cv;
int main()
{
char str[50];
FILE *trainfile;
int k, n, maxval1, maxval2, classnum;
char dataArray[n][3];
trainfile = fopen("training.txt", "r+");
if(trainfile == NULL){
perror("Cannot open file.\n");
}else{
while(!feof(trainfile)){
fscanf(trainfile, "%s", str);
}
}
fclose(trainfile);
return 0;
}
50文字で十分ですか?また、trainfile == NULLならば、fclose(NULL)を呼び出す。 – slezica