C分段故障问题

时间:2011-09-10 01:40:18

标签: c

首先我要说的是,我在过去5年左右的时间里一直用Java和C#编程,所以我的C技能非常生疏。

我遇到了分段错误,我不太清楚为什么。 使用gdb,我能够找到导致故障的线路,但我不确定是什么问题。请帮助:)

我从文件中读取一个整数值,这是几秒钟。假设我读取将该值保存到char token [100] ...

time_type sim_time;
char *s;
unsigned long time_sim;
s = token;
time_sim = strtoul(s,0,10);
int_to_time(time_sim, &sim_time);

Add_Event(eventId, agentId, &sim_time);

time_type是一个结构,它有一堆字段。 这是int_to_time的声明:

void int_to_time(unsigned long, struct time_type*);

现在这里是Add_Event的声明:

void  Add_Event(int, int, struct time_type*);

对int_to_time的调用很顺利,但是下一次调用Add_Event会给sim_time带来分段错误。我究竟做错了什么?

提前致谢。我尽量不包含不必要的代码,但如果我没有包含足够的代码,请告诉我。

1 个答案:

答案 0 :(得分:0)

我不知道您的time_typeint_to_time来自哪个库,但我会查看其文档,看看是否需要以某种方式初始化time_type使用它作为int_to_time的目的地或类似的东西。代码的表面并没有明显的错误,但是如果没有看到更多的代码就很难说清楚。