gpt4 book ai didi

c - dlopen() 是否设置了 errno?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:46:57 25 4
gpt4 key购买 nike

一切都在标题中。手册页什么也没说。一些谷歌报告说有人在 dlopen 之后检查 errno,但只有少数人并且结果各不相同。该函数确实返回了一个成功/不成功的值,但是应该如何找出失败的原因。

dlopen() 是否设置了 errno?那么,在哪里定义了不同的 errno 值?如果不是,应使用什么来检查导致故障的原因?

最佳答案

No (强调已添加)。

Upon successful completion, dlopen() shall return a symbol table handle. If file cannot be found, cannot be opened for reading, is not of an appropriate executable object file format for processing by dlopen(), or if an error occurs during the process of loading file or relocating its symbolic references, dlopen() shall return a null pointer. More detailed diagnostic information shall be available through dlerror().


正如其他人所指出的,没有什么可以禁止 dlopen()(或者更可能是 dlopen() 调用的函数)修改 errno .但是符合标准的 dlopen() 不会通过 errno 报告自己的错误。您需要调用 dlerror()

关于c - dlopen() 是否设置了 errno?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40158005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com