我正在重写一个旧程序来做一些新的事情,突然我在下面的代码行中得到一个分段错误错误:
time_t seconds_since_time_begun = time(0);
为什么,哦,为什么?
更新:
我在我的代码中包含了 time.h 头文件,当我尝试下面的 pmg 建议时,两个变量的大小都是 4。
当我尝试以下操作时:
printf("4\n");
// time_t seconds_since_time_begun = time(0);
printf("5\n");
即使在调用 time() 的行被注释掉后,我仍然会在打印“4”后立即出现分段错误。不输出“5”。这怎么可能?
更新2:
我一步一步地重建了我的函数,试图找出我的代码中发生错误的地方,我想我找到了问题所在。我不确定出了什么问题,但它与整数数组值和 0 之间的比较有关。所以,我认为段错误不是由我对 time(0) 的调用引起的……但我是仍然不确定实际发生了什么。总之,问题解决了。多谢你们。