テキストファイルを読み込んで処理するコードを書きました。自分のPCと別のLinuxシステムで正常に動作していました。しかし、別のLinuxシステムで実行すると、 "ifstream"コマンドで "segmentation fault(core dumped)"というエラーが出ます。私はテキストファイルをチェックし、小さすぎる場合など2本の線は、ファイルがうまく動作しますが、ファイルが大きい場合などに表示されます。 20行の場合、セグメンテーションフォルトエラーでクラッシュします。ifstreamを使用してセグメンテーションフォールトをコアダンプしました
コード原因となるエラーの作品:
int ExtractFragments(int fragmentLength, int overlappingResidues)
{
string line = "", lines = "", interfaceFileName = "";
ifstream interfaceList("tempInterfaceList.txt");
if (interfaceList)
{
bool errFlag = false;
while (getline(interfaceList, interfaceFileName))
{
cout << endl << "interfaces/" << interfaceFileName;
ifstream interfaceFile("interface.txt"); //This line crashes
if (interfaceFile)
cout << "\nHello";
}
}
return 0;
}
このifsreamがセグメンテーションフォールトを引き起こし、どのようにそれを解決するために、なぜ任意のアイデア? ありがとう!
コマンドライン引数はどのように見えますか? – Brandon
[mcve]は良いでしょう... –
デバッガはこれに最適です。 'gdb' '' <プログラムオプション> ''バックトレース ' –
0x5453