C ++程序.exe停止工作

时间:2017-11-28 16:53:29

标签: c++

我无法理解为什么我的程序停止了,我找不到错误...我尝试了一些更改但仍然无法理解..并且只显示一行但它应该不止一行...

代码:

void findcomm () {
    char det = '**';
    for (int i = 0; i < lines.size(); i++) {
        string str (lines[i]);
        vector<char> k (str.begin(), str.end());
        vector<size_t>positions;
        size_t pos = str.find (det, 0);
        while (pos != string::npos) {
            positions.push_back (pos);
            pos = str.find (det, pos+1);
        }
        vector<char> c;
        for (int g = positions[0]+2; g < positions.back()-1; g++) {
            c.push_back (k[g]);
        }
        string comm (c.begin(), c.end());
        cout << comm << "\n";
        comments.push_back (comm);
        c.clear ();
        k.clear ();
        positions.clear ();
    }
}

我试图删除这段代码,然后“程序停止”消失了,所以我认为问题出在这里。 提前谢谢!

1 个答案:

答案 0 :(得分:0)

尝试在行代码或跟踪代码之间使用getch() 这将帮助您找到它何时退出。还使用异常处理技术

替换

det="**"

det[]={"**"};