欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

快速查阅POSIX头文件与函数指南

最编程 2024-07-24 11:11:35
...

POSIX包含多个标准如C接口,命令行,shell等等

对于C的API

_POSIX_C_SOURCE 检测宏定义

<aio.h>

<arpa/inet.h>

<ctype.h>

<dlfcn.h>

<dirent.h>

<errno.h>

ANIS C 只定义了EDOM、EILSEQ、ERANGE

[E2BIG]Argument list too long.
[EACCES]Permission denied.
[EADDRINUSE]Address in use.
[EADDRNOTAVAIL]Address not available.
[EAFNOSUPPORT]Address family not supported.
[EAGAIN]Resource unavailable, try again (may be the same value as [EWOULDBLOCK]).
[EALREADY]Connection already in progress.
[EBADF]Bad file descriptor.
[EBADMSG]Bad message.
[EBUSY]Device or resource busy.
[ECANCELED]Operation canceled.
[ECHILD]No child processes.
[ECONNABORTED]Connection aborted.
[ECONNREFUSED]Connection refused.
[ECONNRESET]Connection reset.
[EDEADLK]Resource deadlock would occur.
[EDESTADDRREQ]Destination address required.
[EDOM]Mathematics argument out of domain of function.
[EDQUOT]Reserved.
[EEXIST]File exists.
[EFAULT]Bad address.
[EFBIG]File too large.
[EHOSTUNREACH]Host is unreachable.
[EIDRM]Identifier removed.
[EILSEQ]Illegal byte sequence.
[EINPROGRESS]Operation in progress.
[EINTR]Interrupted function.
[EINVAL]Invalid argument.
[EIO]I/O error.
[EISCONN]Socket is connected.
[EISDIR]Is a directory.
[ELOOP]Too many levels of symbolic links.
[EMFILE]File descriptor value too large.
[EMLINK]Too many links.
[EMSGSIZE]Message too large.
[EMULTIHOP]Reserved.
[ENAMETOOLONG]Filename too long.
[ENETDOWN]Network is down.
[ENETRESET]Connection aborted by network.
[ENETUNREACH]Network unreachable.
[ENFILE]Too many files open in system.
[ENOBUFS]No buffer space available.
[ENODATA][OB XSR] No message is available on the STREAM head read queue.
[ENODEV]No such device.
[ENOENT]No such file or directory.
[ENOEXEC]Executable file format error.
[ENOLCK]No locks available.
[ENOLINK]Reserved.
[ENOMEM]Not enough space.
[ENOMSG]No message of the desired type.
[ENOPROTOOPT]Protocol not available.
[ENOSPC]No space left on device.
[ENOSR][OB XSR] No STREAM resources.
[ENOSTR][OB XSR] Not a STREAM.
[ENOSYS]Functionality not supported.
[ENOTCONN]The socket is not connected.
[ENOTDIR]Not a directory or a symbolic link to a directory.
[ENOTEMPTY]Directory not empty.
[ENOTRECOVERABLE]State not recoverable.
[ENOTSOCK]Not a socket.
[ENOTSUP]Not supported (may be the same value as [EOPNOTSUPP]).
[ENOTTY]Inappropriate I/O control operation.
[ENXIO]No such device or address.
[EOPNOTSUPP]Operation not supported on socket (may be the same value as [ENOTSUP]).
[EOVERFLOW]Value too large to be stored in data type.
[EOWNERDEAD]Previous owner died.
[EPERM]Operation not permitted.
[EPIPE]Broken pipe.
[EPROTO]Protocol error.
[EPROTONOSUPPORT]Protocol not supported.
[EPROTOTYPE]Protocol wrong type for socket.
[ERANGE]Result too large.
[EROFS]Read-only file system.
[ESPIPE]Invalid seek.
[ESRCH]No such process.
[ESTALE]Reserved.
[ETIME][OB XSR] Stream ioctl() timeout.
[ETIMEDOUT]Connection timed out.
[ETXTBSY]Text file busy.
[EWOULDBLOCK]Operation would block (may be the same value as [EAGAIN]).
[EXDEV]Cross-device link.

<fcntl.h>

F_DUPFD
F_DUPFD_CLOEXEC
F_GETFD
F_SETFD
F_GETFL
F_SETFL
F_GETLK
F_SETLK
F_SETLKW
F_GETOWN
F_SETOWN
F_RDLCK
F_UNLCK
F_WRLCK

FD_CLOEXEC

O_CLOEXEC
O_CREAT
O_DIRECTORY
O_EXCL
O_NOCTTY
O_NOFOLLOW
O_TRUNC
O_TTY_INIT
O_APPEND
O_DSYNC
O_NONBLOCK
O_RSYNC
O_SYNC
O_ACCMODE
O_EXEC
O_RDONLY
O_RDWR
O_SEARCH
O_WRONLY

AT_FDCWD
AT_EACCESS
AT_SYMLINK_NOFOLLOW
AT_SYMLINK_FOLLOW
AT_REMOVEDIR

POSIX_FADV_DONTNEED
POSIX_FADV_NOREUSE
POSIX_FADV_NORMAL
POSIX_FADV_RANDOM
POSIX_FADV_SEQUENTIAL
POSIX_FADV_WILLNEED

int creat(const char *, mode_t);

int fcntl(int, int, ...);

int open(const char *, int, ...);

int openat(int, const char *, int, ...);

int posix_fadvise(int, off_t, off_t, int);

int posix_fallocate(int, off_t, off_t);

int faccessat(int fd, const char *path, int amode, int flag);

int fchmodat(int fd, const char *path, mode_t mode, int flag);

int fchownat(int fd, const char *path, uid_t owner, gid_t group,        int flag);

int linkat(int fd1, const char *path1, int fd2,        const char *path2, int flag);

int unlinkat(int fd, const char *path, int flag);

<fmtmsg.h>

<fnmatch.h>

<ftw.h>

<glob.h>

<grp.h>

<limits.h>

<math.h>

<mqueue.h>

<ndbm.h>

<netdb.h>

<net/if.h>

<netinet/in.h>

<netinet/tcp.h>

<nl_types.h>

<poll.h>

POLLIN
POLLRDNORM
POLLRDBAND
POLLPRI
POLLOUT
POLLWRNORM
POLLWRBAND
POLLERR
POLLHUP
POLLNVAL

int poll(struct pollfd [], nfds_t, int);

<pthread.h>

<pwd.h>

<regex.h>

<sched.h>

<semaphore.h>

<signal.h>

SIG_DFL    Request for default signal handling.
SIG_ERR    Return value from signal() in case of error.
SIG_HOLD[OB XSI]     Request that signal be held.
SIG_IGN    Request that signal be ignored.

SIGABRT
SIGALRM
SIGBUS
SIGCHLD
SIGCONT
SIGFPE
SIGHUP
SIGILL
SIGINT
SIGKILL
SIGPIPE
SIGQUIT
SIGSEGV
SIGSTOP
SIGTERM
SIGTSTP
SIGTTIN
SIGTTOU
SIGUSR1
SIGUSR2
SIGPOLL
SIGPROF
SIGSYS
SIGTRAP
SIGURG
SIGVTALRM
SIGXCPU
SIGXFSZ

int kill(pid_t, int);

int killpg(pid_t, int);

void psiginfo(const siginfo_t *, const char *);

void psignal(int, const char *);

int pthread_kill(pthread_t, int);

int pthread_sigmask(int, const sigset_t *restrict, sigset_t *restrict);

int sigaction(int, const struct sigaction *restrict, struct sigaction *restrict);

int sigaddset(sigset_t *, int);

int sigaltstack(const stack_t *restrict, stack_t *restrict);

int sigdelset(sigset_t *, int);

int sigemptyset(sigset_t *);

int sigfillset(sigset_t *);

int sighold(int);

int sigignore(int);

int siginterrupt(int, int);

int sigismember(const sigset_t *, int);

int sigpause(int);

int sigpending(sigset_t *);

int sigprocmask(int, const sigset_t *restrict, sigset_t *restrict);

int sigqueue(pid_t, int, union sigval);

int sigrelse(int);

void (*sigset(int, void (*)(int)))(int);

int sigsuspend(const sigset_t *);

int sigtimedwait(const sigset_t *restrict, siginfo_t *restrict, const struct timespec *restrict);

int sigwait(const sigset_t *restrict, int *restrict);

int sigwaitinfo(const sigset_t *restrict, siginfo_t *restrict);

<stropts.h>

<stdlib.h>

<string.h>

<sys/ipc.h>

<sys/mman.h>

<sys/msg.h>

<sys/resource.h>

<sys/select.h>

<sys/sem.h>

<sys/shm.h>

<sys/socket.h>

<sys/stat.h>

S_ISBLK(m)
S_ISCHR(m)
S_ISDIR(m)
S_ISFIFO(m)
S_ISREG(m)
S_ISLNK(m)
S_ISSOCK(m)

int chmod(const char *, mode_t);

int fchmod(int, mode_t);

int fchmodat(int, const char *, mode_t, int);

int fstat(int, struct stat *);

int fstatat(int, const char *restrict, struct stat *restrict, int);

int futimens(int, const struct timespec [2]);

int lstat(const char *restrict, struct stat *restrict);

int mkdir(const char *, mode_t);

int mkdirat(int, const char *, mode_t);

int mkfifo(const char *, mode_t);

int mkfifoat(int, const char *, mode_t);

int mknod(const char *, mode_t, dev_t);

int mknodat(int, const char *, mode_t, dev_t);

int stat(const char *restrict, struct stat *restrict);

mode_t umask(mode_t);

int utimensat(int, const char *, const struct timespec [2], int);

<sys/statvfs.h>

<sys/time.h>

<sys/times.h>

<sys/uio.h>

<sys/un.h>

<sys/utsname.h>

<sys/wait.h>

<syslog.h>

<termios.h>

BRKINT
ICRNL
IGNBRK
IGNCR
IGNPAR
INLCR
INPCK
ISTRIP
IXANY
IXOFF
IXON
PARMRK

OPOST
ONLCR
OCRNL
ONOCR
ONLRET
OFDEL
OFILL
NLDLY
CRDLY
TABDLY
BSDLY
VTDLY
FFDLY

B0
B50
B75
B110
B134
B150
B200
B300
B600
B1200
B1800
B2400
B4800
B9600
B19200
B38400

CSIZE
CSTOPB
CREAD
PARENB
PARODD
HUPCL
CLOCAL

ECHO
ECHOE
ECHOK
ECHONL
ICANON
IEXTEN
ISIG
NOFLSH
TOSTOP

TCSANOW
TCSADRAIN
TCSAFLUSH

TCIFLUSH
TCIOFLUSH
TCOFLUSH
TCIOFF
TCION
TCOOFF
TCOON

speed_t cfgetispeed(const struct termios *);
speed_t cfgetospeed(const struct termios *);
int cfsetispeed(struct termios *, speed_t);
int cfsetospeed(struct termios *, speed_t);
int tcdrain(int);
int tcflow(int, int);
int tcflush(int, int);
int tcgetattr(int, struct termios *);
pid_t tcgetsid(int);
int tcsendbreak(int, int);
int tcsetattr(int, int, const struct termios *);

<time.h>

<ulimit.h>

<unistd.h>

int access(const char *, int);

unsigned alarm(unsigned);

int chdir(const char *);

int chown(const char *, uid_t, gid_t);

int close(int);

size_t confstr(int, char *, size_t);

char *crypt(const char *, const char *);

int dup(int);

int dup2(int, int);

void _exit(int);

void encrypt(char [64], int);

int execl(const char *, const char *, ...);

int execle(const char *, const char *, ...);

int execlp(const char *, const char *, ...);

int execv(const char *, char *const []);

int execve(const char *, char *const [], char *const []);

int execvp(const char *, char *const []);

int faccessat(int, const char *, int, int);

int fchdir(int);

int fchown(int, uid_t, gid_t);

int fchownat(int, const char *, uid_t, gid_t, int);

int fdatasync(int);

int fexecve(int, char *const [], char *const []);

pid_t fork(void);

long fpathconf(int, int);

int fsync(int);

int ftruncate(int, off_t);

char *getcwd(char *, size_t);

gid_t getegid(void);

uid_t geteuid(void);

gid_t getgid(void);

int getgroups(int, gid_t []);

long gethostid(void);

int gethostname(char *, size_t);

char *getlogin(void);

int getlogin_r(char *, size_t);

int getopt(int, char * const [], const char *);

pid_t getpgid(pid_t);

pid_t getpgrp(void);

pid_t getpid(void);

pid_t getppid(void);

pid_t getsid(pid_t);

uid_t getuid(void);

int isatty(int);

int lchown(const char *, uid_t, gid_t);

int link(const char *, const char *);

int linkat(int, const char *, int, const char *, int);

int lockf(int, int, off_t);

off_t lseek(int, off_t, int);

int nice(int);

long pathconf(const char *, int);

int pause(void);

int pipe(int [2]);

ssize_t pread(int, void *, size_t, off_t);

ssize_t pwrite(int, const void *, size_t, off_t);

ssize_t read(int, void *, size_t);

ssize_t readlink(const char *restrict, char *restrict, size_t);

ssize_t readlinkat(int, const char *restrict, char *restrict, size_t);

int rmdir(const char *);

int setegid(gid_t);

int seteuid(uid_t);

int setgid(gid_t);

int setpgid(pid_t, pid_t);

pid_t setpgrp(void);

int setregid(gid_t, gid_t);

int setreuid(uid_t, uid_t);

pid_t setsid(void);

int setuid(uid_t);

unsigned sleep(unsigned);

void swab(const void *restrict, void *restrict, ssize_t);

int symlink(const char *, const char *);

int symlinkat(const char *, int, const char *);

void sync(void);

long sysconf(int);

pid_t tcgetpgrp(int);

int tcsetpgrp(int, pid_t);

int truncate(const char *, off_t);

char *ttyname(int);

int ttyname_r(int, char *, size_t);

int unlink(const char *);

int unlinkat(int, const char *, int);

ssize_t write(int, const void *, size_t);

<utime.h>

<utmpx.h>

<wchar.h>

<wctype.h>

<wordexp.h>

void (*sigev_notify_function)(union sigval)

void psiginfo(const siginfo_t *, const char *);