我的c ++代码中的堆栈错误,它是什么以及如何解决它?

时间:2018-05-20 20:37:06

标签: c++ stack

很高兴终于成为这个社区的一员!我猜这个问题是个愚蠢的问题,并回答了类似的问题;我检查过他们,但他们都没有帮助我。我找不到错误,我无法解决它,因为我不理解它。我在高中和C ++初学者。今天,我们进行了C ++竞赛,由于这个错误,整个任务得到0。 该任务的第一部分是输入n string a(不含空格)然后生成字符串n1。 N1成员都是来自n的字符,其ASCII值介于100-110之间。 我就这样做了:

#include<iostream>
#include<string>

using namespace std;

int main(){

    string n;
    string n1;
    cin >> n;

    int l;

    //here i get the length of n to use in for
    l=n.length();

    //i change all chars to . so i can do an output more easily later
    for(int i=0;i<l;i++){
        n1[i]='.';
    }

    int a;
    for(int i=0; i<l ;i++){
        //ascii of n[i]
        a=n[i];
        if(a>99 && a<111){
            n1[i]=n[i];
        }
    }


    for(int i=0;i<l;i++){
        if(n1[i]!='.'){
            cout << n1[i] << endl;
        }
    }

return 0;
}

我们在Visual Studio中工作,它崩溃并展示了一些我真正不理解的东西......一些关于某些限制的东西。我不在VS工作,我正在运行Linux所以我在codeblocks工作,我认为问题出在VS.我检查了我的家用电脑,它向我显示了这个错误。 当字符串长度低于25时,一切正常。

这个错误究竟是什么(或者警告)以及如何修复它。我发现某个地方可以在ide中禁用它,但我想这只是一种避免问题的方法。

0 个答案:

没有答案