BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #8741同步于 2008/6/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

[合集] 什么时候标准出错会输出"Bad Address"啊

Xer
2008/6/24镜像同步0 回复
☆─────────────────────────────────────☆ jaycolas (小白) 于 (Sat May 31 16:35:48 2008) 提到: 我是在linux下写代码,调用exec函数,结果出错,标准出错打印信息是:Bad Address;这是什么原因呢? ☆─────────────────────────────────────☆ ox (小贝|抱抱三人组之小宝贝|东北志责任编辑) 于 (Sat May 31 16:40:48 2008) 提到: 调用的资源地址写错了呗 【 在 jaycolas (小白) 的大作中提到: 】 : 我是在linux下写代码,调用exec函数,结果出错,标准出错打印信息是:Bad Address;这是什么原因呢? ☆─────────────────────────────────────☆ jaycolas (小白) 于 (Sat May 31 16:42:40 2008) 提到: 能说的详细点么?我用的是execvp函数 还有,从哪能查到标准出错的输出所对应的原因啊~~~ 【 在 ox 的大作中提到: 】 : 调用的资源地址写错了呗 ☆─────────────────────────────────────☆ ox (小贝|抱抱三人组之小宝贝|东北志责任编辑) 于 (Sat May 31 16:45:35 2008) 提到: 看一下 man帮助文档 man execvp 【 在 jaycolas (小白) 的大作中提到: 】 : 能说的详细点么?我用的是execvp函数 : 还有,从哪能查到标准出错的输出所对应的原因啊~~~ ☆─────────────────────────────────────☆ jaycolas (小白) 于 (Sat May 31 16:47:56 2008) 提到: man errno看到下面一行 EFAULT Bad address (POSIX.1) EFAULT 是什么意思呢? ☆─────────────────────────────────────☆ jaycolas (小白) 于 (Sat May 31 16:51:59 2008) 提到: 从网上查到的 Bad Address This happens when you call a kernel syscall, and provide it with a pointer that points outside your address space. Tsk Tsk. You should check your pointers are properly initialised. If you get this after doing a fork(2) followed by an execl(3) or execlp(3), make sure you remembered to NULL-terminate the list of arguments... ☆─────────────────────────────────────☆ ericyosho (ericyosho) 于 (Sat May 31 19:15:26 2008) 提到: 哦,学习了,竟然还有参数列表有'\0'结尾。 很好很强大 ☆─────────────────────────────────────☆ jaycolas (小白) 于 (Sat May 31 19:26:45 2008) 提到: 没错,调用execvp的时候那个char *argv[ ]的最后一个元素也必须是0才行,刚把问题解决 【 在 ericyosho 的大作中提到: 】 : 哦,学习了,竟然还有参数列表有'\0'结尾。 : 很好很强大
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。