c - VxWorks PPC 中 errno 始终返回零

标签 c vxworks errno

我在 VxWorks PPC 上运行我的代码,如果系统调用失败,特别是套接字发送/接收函数,errno 总是返回 0。

经过一些分析,我发现,如果所有系统调用失败,errno都会返回0。

是否需要进行任何初始化才能使 errno 返回正确的值?

最佳答案

在 shell(内核或主机)中,如果键入“i”命令,您将获得任务列表。其中字段之一是 errno 值。找到有错误的任务并设置 errno 值。

检查 errno 时,您必须处于导致错误的同一任务中:

if(ERROR = someSystemFunction())
  printf("errno=%x", errno);

你不能在 shell 中期望打印 errno

-> errno     (<---- will NEVER work)
errno:0x123455 value: 0 = 0x0

关于c - VxWorks PPC 中 errno 始终返回零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2524467/

相关文章:

c - libdl 加载的 "plugins"如何引用加载它们的程序中的符号?

c - 在这个例子中应该创建什么任务?

vxworks - errno可以设置成功吗?

c - 如何为我的自定义错误编号

C 创建超过一定大小的结构数组会导致崩溃

c - 为什么通过scanf()输入一个非预期的值类型会导致这个程序进入死循环

c - (进位标志)和汇编中的系统调用(Mac Os 上的 x64 Intel 语法)之间有什么关系?

python: zipfile.ZipFile 没有这样的文件或目录

android - 尽管有 -fPIC,但文本重定位?

c++ - 将 GetTickCount() vxWorks 转换为 Linux