程序启动时是否可能发生分段错误(即程序中没有运行一行代码),但可能是因为它正在加载?启动时出现分段错误 - C?
我有以下生成文件
OBJS = one.o two.o
prog: prog.o $(OBJS) libtreader.so
${CC} -o [email protected] ${CFLAGS} ${EXTRACFLAGS} -L. -lssl -ltreader prog.o $(OBJS) -shared
我从一个shell脚本运行的程序
path/prog
的声明之后的第一条语句是一个printf语句。但唯一打印的是:分段错误
所以我可能在打印时遇到问题或加载程序时出现问题。任何建议真的很感激。
编辑: 这是最主要的方法
int main(int argc, char *argv[])
{
int err;
struct parse_params params;
int c;
int index;
printf("SSSSS\n");
EDIT2:我期待在这里的正确的文件:prog.c中?或主要的方法可以在另一个文件?
将调用添加到'printf()'。似乎你对那里的指针有一个错误的假设。 – 2013-01-09 20:18:52
也许你没有看到'printf'输出由于缓冲?在'printf'后面显示'fflush(stdout);'显示什么? –
首先尝试在调试器中运行它看看它在哪里核心 – 2013-01-09 20:21:00