程序接收信号SIGSEGV

时间:2018-03-11 12:11:29

标签: c++ sigsegv

我写了以下代码:

#include <string>
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

int main() {
    vector<float> v;
    float pi=3.14;
    for(int i=0; i<25; i++){
        v.push_back(pi);
        pi*=1.1;
        //cout << v[i] << endl;
    }

    vector<float> w;
    float e=2.71;
    for(int i=0; i<25; i++){
        w.push_back(e);
        e*=1.1;
        //cout << w[i] << endl;
    }

    vector<float> s;
    for(int i=0; i<25; i++){
        s[i] = v[i] + w[i];
        cout << s[i] << endl;
    }
    getchar();
}

但我的CodeLite告诉我一个错误:

  

程序接收信号SIGSEGV。 “呼叫”中提供了堆栈跟踪   堆栈&#39;标签

有谁知道发生了什么?代码似乎是正确的。只有3x25的数字,所以内存应该足够了。请解释发生了什么。

0 个答案:

没有答案