Я читаю и пишу в файл, доступный из аргументов командной строки! Однако, когда я пытаюсь поместить переменную в тело переменной while, она запускается 1 раз, записывая слово в файл, как положено, и во втором слове появляется ошибка сегментации. Например, если я поставлю непосредственно перед тем, как l oop завершит m = m + 3, это вызовет ошибку сегментации. Есть мысли о том, почему это происходит?
infile.open(argv[j+1],ofstream::app);
file.open(argv[j+1],ofstream::app);
while (!infile.eof()) {
infile >> line;
for (i=0; i<strlen(argv[j+2]); i++) {
if (int(argv[j+2][i])>=65 && int(argv[j+2][i]) <=90) {
if ((line[i*3]-'0')*100 + (line[i*3+1]-'0')*10 + (line[i*3+2]-'0')==int(argv[j+2][i]) + 32) {
wordcheck=wordcheck+1;
cout << wordcheck << endl;
}
}
else if (int(argv[j+2][i]) < 100 ) {
if (int(argv[j+2][i])==(line[i*3+1]-'0')*10 + (line[i*3+2]-'0')) {
wordcheck=wordcheck+1;
cout << wordcheck << endl;
}
}
else {
if (int(argv[j+2][i])==(line[i*3]-'0')*100 + (line[i*3+1]-'0')*10 + (line[i*3+2]-'0')) {
wordcheck=wordcheck+1;
cout << wordcheck << endl;
}
}
}
}
infile.close();
file.close();