文字列から double への変換には atof を使用しました。プログラムは csv ファイルから 1 文字列ずつ eof に達するまで読み取ります。特定の文字列でのみアクセス違反の問題が発生し、それ以前の文字列には問題がありません。何が問題なのですか?エラーは、TestOpenCV_CameraCalibration.exe の 0x778515de で未処理の例外です: 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++;
}
}