error.c
来自「俄罗斯高人Mamaich的Pocket gcc编译器(运行在PocketPC上)」· C语言 代码 · 共 153 行
C
153 行
#include <stdlib.h>
#include <errno.h>
#include "sys/wcefile.h"
#include "sys/wceerror.h"
#if 0
char *_error_list[] = {
"No error", /* 0 */
"EPERM",
"No such file or directory", /* ENOENT */
"ESRCH",
"EINTR",
"EIO",
"ENXIO",
"E2BIG",
"ENOEXEC",
"Bad file descriptor", /* EBADF */
"ECHILD",
"EAGAIN",
"ENOMEM",
"Permission denied", /*EACCESS */
"EFAULT",
"NOSUCHERROR",
"EBUSY",
"File exists", /* EEXISTS */
"EXDEV",
"ENODEV",
"ENOTDIR",
"EISDIR",
"Invalid argument", /* EINVAL */
"ENFILE",
"EMFILE",
"ENOTTY",
"NOSUCHERROR",
"EFBIG",
"Disk full", /* ENOSPC */
"ESPIPE",
"EROFS",
"EMLINK",
"Broken pipe", /* EPIPE */
"EDOM",
"ERANGE",
"NOSUCHERROR",
"EDEADLK",
"Unimplemented system call", /* ENOSYS */
NULL
};
#endif
int
_winerr2errno(DWORD werror)
{
switch(werror) {
case 0:
return 0;
case ERROR_FILE_NOT_FOUND:
case ERROR_PATH_NOT_FOUND:
return ENOENT;
case ERROR_ACCESS_DENIED:
return EACCES;
case ERROR_DEV_NOT_EXIST:
return ENODEV;
case ERROR_ALREADY_EXISTS:
return EEXIST;
case ERROR_DIR_NOT_EMPTY:
return ENOTEMPTY;
/* Winsock Errors */
case WSAEWOULDBLOCK:
return EWOULDBLOCK;
case WSAEINPROGRESS:
return EINPROGRESS;
case WSAEALREADY:
return EALREADY;
case WSAENOTSOCK:
return ENOTSOCK;
case WSAEDESTADDRREQ:
return EDESTADDRREQ;
case WSAEMSGSIZE:
return EMSGSIZE;
case WSAEPROTOTYPE:
return EPROTOTYPE;
case WSAENOPROTOOPT:
return ENOPROTOOPT;
case WSAEPROTONOSUPPORT:
return EPROTONOSUPPORT;
case WSAESOCKTNOSUPPORT:
return ESOCKTNOSUPPORT;
case WSAEOPNOTSUPP:
return WSAEOPNOTSUPP;
case WSAEPFNOSUPPORT:
return EPFNOSUPPORT;
case WSAEAFNOSUPPORT:
return EAFNOSUPPORT;
case WSAEADDRINUSE:
return EADDRINUSE;
case WSAEADDRNOTAVAIL:
return EADDRNOTAVAIL;
case WSAENETDOWN:
return ENETDOWN;
case WSAENETUNREACH:
return ENETUNREACH;
case WSAENETRESET:
return ENETRESET;
case WSAECONNABORTED:
return ECONNABORTED;
case WSAECONNRESET:
return ECONNRESET;
case WSAENOBUFS:
return ENOBUFS;
case WSAEISCONN:
return EISCONN;
case WSAENOTCONN:
return ENOTCONN;
case WSAESHUTDOWN:
return ESHUTDOWN;
case WSAETOOMANYREFS:
return ETOOMANYREFS;
case WSAETIMEDOUT:
return ETIMEDOUT;
case WSAECONNREFUSED:
return ECONNREFUSED;
case WSAELOOP:
return ELOOP;
case WSAENAMETOOLONG:
return ENAMETOOLONG;
case WSAEHOSTDOWN:
return EHOSTDOWN;
case WSAEHOSTUNREACH:
return EHOSTUNREACH;
case WSAENOTEMPTY:
return ENOTEMPTY;
case WSAEPROCLIM:
return EPROCLIM;
case WSAEUSERS:
return EUSERS;
case WSAEDQUOT:
return EDQUOT;
case WSAESTALE:
return ESTALE;
case WSAEREMOTE:
return EREMOTE;
case WSAEDISCON:
return ENOTSUP;
default:
return ENOTSUP;
}
return ENOTSUP;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?