⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unistd.h

📁 一个C源代码分析器
💻 H
📖 第 1 页 / 共 2 页
字号:
/* Copyright (C) 1991, 1992, 1993, 1994 Free Software Foundation, Inc.This file is part of the GNU C Library.The GNU C Library is free software; you can redistribute it and/ormodify it under the terms of the GNU Library General Public License aspublished by the Free Software Foundation; either version 2 of theLicense, or (at your option) any later version.The GNU C Library is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNULibrary General Public License for more details.You should have received a copy of the GNU Library General PublicLicense along with the GNU C Library; see the file COPYING.LIB.  Ifnot, write to the Free Software Foundation, Inc., 675 Mass Ave,Cambridge, MA 02139, USA.  *//* *	POSIX Standard: 2.10 Symbolic Constants		<unistd.h> */#ifndef	_UNISTD_H#define	_UNISTD_H	1#include <features.h>__BEGIN_DECLS/* These may be used to determine what facilities are present at compile time.   Their values can be obtained at run time from sysconf.  *//* POSIX Standard approved as IEEE Std 1003.1 as of August, 1988.  */#define	_POSIX_VERSION	199009L/* These are not #ifdef __USE_POSIX2 because they are   in the theoretically application-owned namespace.  */#define	_POSIX2_C_VERSION	199912L	/* Invalid until 1003.2 is done.  *//* If defined, the implementation supports the   C Language Bindings Option.  */#define	_POSIX2_C_BIND	1/* If defined, the implementation supports the   C Language Development Utilities Option.  */#define	_POSIX2_C_DEV	1/* If defined, the implementation supports the   Software Development Utilities Option.  */#define	_POSIX2_SW_DEV	1/* Get values of POSIX options:   If these symbols are defined, the corresponding features are   always available.  If not, they may be available sometimes.   The current values can be obtained with `sysconf'.   _POSIX_JOB_CONTROL	Job control is supported.   _POSIX_SAVED_IDS	Processes have a saved set-user-ID   			and a saved set-group-ID.   If any of these symbols is defined as -1, the corresponding option is not   true for any file.  If any is defined as other than -1, the corresponding   option is true for all files.  If a symbol is not defined at all, the value   for a specific file can be obtained from `pathconf' and `fpathconf'.   _POSIX_CHOWN_RESTRICTED	Only the super user can use `chown' to change   				the owner of a file.  `chown' can only be used				to change the group ID of a file to a group of				which the calling process is a member.   _POSIX_NO_TRUNC		Pathname components longer than   				NAME_MAX generate an error.   _POSIX_VDISABLE		If defined, if the value of an element of the				`c_cc' member of `struct termios' is				_POSIX_VDISABLE, no character will have the				effect associated with that element.   */#include <posix_opt.h>/* Standard file descriptors.  */#define	STDIN_FILENO	0	/* Standard input.  */#define	STDOUT_FILENO	1	/* Standard output.  */#define	STDERR_FILENO	2	/* Standard error output.  *//* All functions that are not declared anywhere else.  */#include <gnu/types.h>#ifndef	ssize_t#define	ssize_t	__ssize_t#endif#define	__need_size_t#define __need_NULL#include <stddef.h>/* Values for the second argument to access.   These may be OR'd together.  */#define	R_OK	4		/* Test for read permission.  */#define	W_OK	2		/* Test for write permission.  */#define	X_OK	1		/* Test for execute permission.  */#define	F_OK	0		/* Test for existence.  *//* Test for access to NAME.  */extern int __access __P ((__const char *__name, int __type));extern int access __P ((__const char *__name, int __type));/* Values for the WHENCE argument to lseek.  */#ifndef	_STDIO_H		/* <stdio.h> has the same definitions.  */#define	SEEK_SET	0	/* Seek from beginning of file.  */#define	SEEK_CUR	1	/* Seek from current position.  */#define	SEEK_END	2	/* Seek from end of file.  */#endif/* Move FD's file position to OFFSET bytes from the   beginning of the file (if WHENCE is SEEK_SET),   the current position (if WHENCE is SEEK_CUR),   or the end of the file (if WHENCE is SEEK_END).   Return the new file position.  */extern __off_t __lseek __P ((int __fd, __off_t __offset, int __whence));extern __off_t lseek __P ((int __fd, __off_t __offset, int __whence));/* Close the file descriptor FD.  */extern int __close __P ((int __fd));extern int close __P ((int __fd));/* Read NBYTES into BUF from FD.  Return the   number read, -1 for errors or 0 for EOF.  */extern ssize_t __read __P ((int __fd, __ptr_t __buf, size_t __nbytes));extern ssize_t read __P ((int __fd, __ptr_t __buf, size_t __nbytes));/* Write N bytes of BUF to FD.  Return the number written, or -1.  */extern ssize_t __write __P ((int __fd, __const __ptr_t __buf, size_t __n));extern ssize_t write __P ((int __fd, __const __ptr_t __buf, size_t __n));/* Create a one-way communication channel (pipe).   If successul, two file descriptors are stored in PIPEDES;   bytes written on PIPEDES[1] can be read from PIPEDES[0].   Returns 0 if successful, -1 if not.  */extern int __pipe __P ((int __pipedes[2]));extern int pipe __P ((int __pipedes[2]));/* Schedule an alarm.  In SECONDS seconds, the process will get a SIGALRM.   If SECONDS is zero, any currently scheduled alarm will be cancelled.   The function returns the number of seconds remaining until the last   alarm scheduled would have signaled, or zero if there wasn't one.   There is no return value to indicate an error, but you can set `errno'   to 0 and check its value after calling `alarm', and this might tell you.   The signal may come late due to processor scheduling.  */extern unsigned int alarm __P ((unsigned int __seconds));/* Make the process sleep for SECONDS seconds, or until a signal arrives   and is not ignored.  The function returns the number of seconds less   than SECONDS which it actually slept (thus zero if it slept the full time).   If a signal handler does a `longjmp' or modifies the handling of the   SIGALRM signal while inside `sleep' call, the handling of the SIGALRM   signal afterwards is undefined.  There is no return value to indicate   error, but if `sleep' returns SECONDS, it probably didn't work.  */extern unsigned int sleep __P ((unsigned int __seconds));/* Suspend the process until a signal arrives.   This always returns -1 and sets `errno' to EINTR.  */extern int pause __P ((void));/* Change the owner and group of FILE.  */extern int __chown __P ((__const char *__file,			 __uid_t __owner, __gid_t __group));extern int chown __P ((__const char *__file,		       __uid_t __owner, __gid_t __group));#ifdef	__USE_BSD/* Change the owner and group of the file that FD is open on.  */extern int __fchown __P ((int __fd,			  __uid_t __owner, __gid_t __group));extern int fchown __P ((int __fd,			__uid_t __owner, __gid_t __group));#endif /* Use BSD.  *//* Change the process's working directory to PATH.  */extern int __chdir __P ((__const char *__path));extern int chdir __P ((__const char *__path));/* Get the pathname of the current working directory,   and put it in SIZE bytes of BUF.  Returns NULL if the   directory couldn't be determined or SIZE was too small.   If successful, returns BUF.  In GNU, if BUF is NULL,   an array is allocated with `malloc'; the array is SIZE   bytes long, unless SIZE <= 0, in which case it is as   big as necessary.  */extern char *getcwd __P ((char *__buf, size_t __size));#ifdef	__USE_GNU/* Return a malloc'd string containing the current directory name.   If the environment variable `PWD' is set, and its value is correct,   that value is used.  */extern char *get_current_dir_name __P ((void));#endif#ifdef	__USE_BSD/* Put the absolute pathname of the current working directory in BUF.   If successful, return BUF.  If not, put an error message in   BUF and return NULL.  BUF should be at least PATH_MAX bytes long.  */extern char *getwd __P ((char *__buf));#endif/* Duplicate FD, returning a new file descriptor on the same file.  */extern int __dup __P ((int __fd));extern int dup __P ((int __fd));/* Duplicate FD to FD2, closing FD2 and making it open on the same file.  */extern int __dup2 __P ((int __fd, int __fd2));extern int dup2 __P ((int __fd, int __fd2));/* NULL-terminated array of "NAME=VALUE" environment variables.  */extern char **__environ;extern char **environ;/* Replace the current process, executing PATH with arguments ARGV and   environment ENVP.  ARGV and ENVP are terminated by NULL pointers.  */extern int __execve __P ((__const char *__path, char *__const __argv[],			  char *__const __envp[]));extern int execve __P ((__const char *__path, char *__const __argv[],			char *__const __envp[]));#ifdef __USE_GNU/* Execute the file FD refers to, overlaying the running program image.   ARGV and ENVP are passed to the new program, as for `execve'.  */extern int fexecve __P ((int __fd,			 char *const __argv[], char *const __envp[]));#endif/* Execute PATH with arguments ARGV and environment from `environ'.  */extern int execv __P ((__const char *__path, char *__const __argv[]));/* Execute PATH with all arguments after PATH until a NULL pointer,   and the argument after that for environment.  */extern int execle __P ((__const char *__path, __const char *__arg,...));/* Execute PATH with all arguments after PATH until   a NULL pointer and environment from `environ'.  */extern int execl __P ((__const char *__path, __const char *__arg,...));/* Execute FILE, searching in the `PATH' environment variable if it contains   no slashes, with arguments ARGV and environment from `environ'.  */extern int execvp __P ((__const char *__file, char *__const __argv[]));/* Execute FILE, searching in the `PATH' environment variable if   it contains no slashes, with all arguments after FILE until a   NULL pointer and environment from `environ'.  */extern int execlp __P ((__const char *__file, ...));/* Terminate program execution with the low-order 8 bits of STATUS.  */extern __NORETURN void _exit __P ((int __status));/* Get the `_PC_*' symbols for the NAME argument to `pathconf' and `fpathconf';   the `_SC_*' symbols for the NAME argument to `sysconf';   and the `_CS_*' symbols for the NAME argument to `confstr'.  */#include <confname.h>/* Get file-specific configuration information about PATH.  */extern long int __pathconf __P ((__const char *__path, int __name));extern long int pathconf __P ((__const char *__path, int __name));/* Get file-specific configuration about descriptor FD.  */extern long int __fpathconf __P ((int __fd, int __name));extern long int fpathconf __P ((int __fd, int __name));/* Get the value of the system variable NAME.  */extern long int __sysconf __P ((int __name));extern long int sysconf __P ((int __name));#ifdef	__USE_POSIX2/* Get the value of the string-valued system variable NAME.  */extern size_t confstr __P ((int __name, char *__buf, size_t __len));#endif/* Get the process ID of the calling process.  */extern __pid_t __getpid __P ((void));extern __pid_t getpid __P ((void));/* Get the process ID of the calling process's parent.  */extern __pid_t __getppid __P ((void));extern __pid_t getppid __P ((void));/* Get the process group ID of process PID.  */extern __pid_t __getpgrp __P ((__pid_t __pid));#ifndef	__FAVOR_BSD/* Get the process group ID of the calling process.  */extern __pid_t getpgrp __P ((void));#else /* Favor BSD.  */#define	getpgrp(pid)	__getpgrp(pid)#endif/* Set the process group ID of the process matching PID to PGID.   If PID is zero, the current process's process group ID is set.   If PGID is zero, the process ID of the process is used.  */extern int __setpgrp __P ((__pid_t __pid, __pid_t __pgid));extern int setpgid __P ((__pid_t __pid, __pid_t __pgid));#ifdef	__USE_BSD

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -