0

我目前正在使用 C 实现的简单服务器。处理 jpg 文件工作正常,btu png 给我一个分段错误。我从来没有通过这段代码。为什么会这样?

fseek (file , 0 , SEEK_END);
lSize = ftell (file);
rewind (file);

谢谢。

4

1 回答 1

2

您更有可能以有问题的方式访问这些数组。检查缓冲代码中的逻辑。确保您的缓冲区大小#define'd 在中心位置,而不是硬编码大小和偏移量。你让它不再崩溃,但如果你错过了一个潜在的逻辑错误,当你改变其他东西时,你可能会遇到神秘的问题。可能值得您花时间故意再次破坏程序并弄清楚它为什么会被破坏。正如其他人所建议的那样,此时调试器将是一个绝妙的主意。或发布更完整的代码示例。

于 2012-05-02T01:18:13.733 回答