2

我对我应该在我的程序中使用什么实现 errno() 感到困惑。

据我所知,标准的 errno() 是在 errno.h 中定义的。但是,Visual Studio 在 stdlib.h 中也有 errno()。也许这是不正确的,但对我来说 stdlib.h 的 errno() 比 errno.h 的快。但 errno() 也在 stddef.h 中定义。

我应该使用哪一个?#ifdef _WIN32 #include <stdlib.h> #else #include <errno.h> #endif?

4

2 回答 2

8

在 C 中使用errno.h,在 C++ 中使用cerrno标头。

errno为了方便起见,可以在其他标题中定义,但为了最大程度的可移植性,您应该使用上面的标题。

于 2012-04-30T19:04:26.567 回答
0

不确定 Windows,但在 Linux/Unix 上,errnoerrno.h.

于 2012-04-30T19:06:18.893 回答