Я использовал atof для преобразования из строки в удвоение. Программа читает из файла csv одну строку за одной строкой до достижения eof. Только в определенной строке есть проблемы с нарушением прав доступа, и эти строки раньше не имеют никаких проблем. В чем может быть проблема? Ошибка
Необработанное исключение в 0x778515de в TestOpenCV_CameraCalibration.exe: 0xC0000005: расположение чтения нарушения доступа 0x406e64b1. Это случилось в atof.
Программа прилагается ниже
while (!myReadFile.eof())
{
//myReadFile>>cstr;
getline ( myReadFile, cstr, ',' );
//removedString = RemoveChars(cstr, removedchar);
const char * c = cstr.c_str();
//cout << k << "\n";
if(k == 1200)
k = k;
temp[j++][k] = atof(c);
if(i < 3)
{
if((j = j % 2) == 0)
k++;
}
else
{
if((j = j % 3) == 0)
k++;
}
}
рассмотреть возможность использования strtod
читать значение в двойном
сравните endptr с вашим char ptr. Если они одинаковые, не увеличивайте свои счетчики.
Других решений пока нет …