json -c奇怪的分段错误错误

时间:2015-03-05 21:16:51

标签: c++ json segmentation-fault json-c

对于类中的赋值,我们应该在C ++ 98中使用json-c构建一个json对象,关于我们在二叉搜索树上进行的一些操作。

该对象由较小的对象组成,这些对象描述了我们对此代码中的二叉搜索树所执行的操作。但是,当向更大的对象添加对象时,我会得到一个具有极其可变位置的段错误。它可以发生在从3次操作到40次操作的任何地方,我很困惑。

如果我评论下面的代码,程序从头到尾运行完美,让我相信这是我问题的根源。

这是代码中使用的一些json_object *的声明:

bigArr = json_object_new_array();
Assignment6Output = json_object_new_object();
opCount = 1;

这是实际的代码,似乎让我得到了段错误:

json_object *jOp1 = json_object_new_object();
json_object *jAdd = json_object_new_string("add");
json_object *jMovieAdd = json_object_new_string(name.c_str());
json_object_object_add(jOp1, "operation", jAdd);
json_object_object_add(jOp1, "parameter", jMovieAdd);
json_object_array_add(bigArr, jMovieAdd);
json_object_object_add(jOp1, "output", bigArr);
string counter = static_cast<ostringstream*>( &(ostringstream() << opCount) )->str();
json_object_object_add(Assignment6Output, counter.c_str(), jOp1);

其中'name'是传递给添加节点函数的字符串。

字符串计数器是从int到字符串的转换,它是已经发生的操作数的计数器。

如果有人能帮我指出正确的方向,我会很高兴。

0 个答案:

没有答案