自分では解決できない問題があります。
string filenameRaw;
filenameRaw= argv[1];
function(filenameRaw.c_str(),...);
function(const char* rawDataFile,const char* targetfieldFile,const char* resultFile,const char* filename)
...
this->IOPaths.rawData=rawDataFile;
...
これまでのところ非常にうまく機能します。今、変数 IOPaths.rawData に別の文字列を入れようとしています...
function(const char* rawDataFile,const char* targetfieldFile,const char* resultFile,const char* filename)
...
string filenameRaw;
filenameRaw=reader.Get("paths", "rawData", "UNKNOWN")
...
const char* rawDataFile1=filenameRaw.c_str();
cout << "Compare: " << strcmp(rawDataFile,rawDataFile1) <<endl;
...
this->IOPaths.rawData=rawDataFile1;
これはもう機能しません。私のプログラムの後半で、ファイル名にエラーが発生します。strcmp は間違いなく 0 を返すため、文字列は等しくなければなりません。誰かが私が間違っていることを知っていますか?