我在VxWorks PPC上运行我的代码并且系统调用失败,特别是对于套接字发送/ recv函数,errno总是返回0。
经过一些分析后我发现,errno会在所有系统调用失败时返回0。
我是否应该为errno进行任何初始化以返回正确的值?
答案 0 :(得分:1)
从shell(内核或主机),如果键入“i”命令,您将获得任务列表。其中一个字段是errno值。找到有错误的任务,并设置errno值。
检查errno时,您必须处于导致错误的同一任务中:
if(ERROR = someSystemFunction())
printf("errno=%x", errno);
你不能在shell并期望打印errno
-> errno (<---- will NEVER work)
errno:0x123455 value: 0 = 0x0
答案 1 :(得分:0)
errnoGet()将返回执行它的任务的错误。 请参阅errnoLib上的文档以检索其他任务的错误