使用scanf读取整数时出现问题

时间:2014-12-24 16:52:48

标签: io scanf

我知道这可能是一个愚蠢的问题,但你能告诉我为什么下面的代码补丁失败了吗?我没有看错。我试图使用scanf读取整数。我已经包含了必要的库,但是当我运行程序时,它在我读完第一个s之后就崩溃了。谢谢。

 #include <iostream>
#include <ctime>
#include <cstdlib>
#include <cmath>
#include <cstdio>
#include <vector>

using namespace std;

int main()
{
    int n, x;

    scanf("%d", &n); scanf("%d", &x);

    vector< pair<int, int> > moments;

    for(int i = 0; i < n; ++i)
    {
        int f, s;
        scanf("%d", &f);
        scanf("%d", &s );

        moments[i].first = f;
        moments[i].second = s;

    }


    return 0;
}

1 个答案:

答案 0 :(得分:0)

这不是将时间分配给时刻的方法,因为时刻[i]尚不存在。尝试:

    pair<int, int> thing;
    thing = make_pair(f,s);
    moments.push_back(thing);

而不是你对瞬间元素的任命。