网站优化推广教程,中国数据域名注册,wordpress媒体库在哪个文件夹,网站建设的关键细节Linux C 一些函数 所属的头文件 2011-03-07 10:25:07分类#xff1a; LINUX在编写程序时#xff0c;有时总是不记得所使用的函数在哪个库函数中。现在先把自己以前经常用到的函数头文件总结一下。 有不对的地方还请指教。1#xff0c;系统调用 文件的操作函数#inlclude LINUX在编写程序时有时总是不记得所使用的函数在哪个库函数中。现在先把自己以前经常用到的函数头文件总结一下。 有不对的地方还请指教。1系统调用 文件的操作函数#inlclude ltfcntl.hgtint open(char *name,int how) 第二个参数O_RDONLY O_WRONLY O_RDWR O_CREAT#include ltunistd.hgtint close(int fd)size_t read(int fd,void *buf, size_t count)size_t write(int fd,const void *buf,size_t count)sleep(1) 系统睡眠一秒钟最小单位为一秒。#define msleep(x) usleep(x*1000)msleep(500); 系统睡眠0.5秒#include ltstdio.hgtperror(会出现错误的函数名)#include ltstring.hgtchar *strerror(int errnum) 依据错误代码errnum来查找错误原因字符串char *strcpy(char *dest,const char *src)int strcmp(char *s1,const char *s2) s1若等于s2的值则返回0值int strncmp(char *s1,const char *s2,int n) 前n个字符串比较2,进程控制函数#include ltunistd.hgtpid_t fork(void) 子进程中返回0 父进程中返回子进程ID 出错返回-1pid_t getpid(void) pid_t getppid(void)pid_t vfork(void)exec函数族进程pid 的类型为pid_t 类型它包含于#include ltsys/types.hgt 若定义一个进程pid变量则需要包含此头文件exit(n)结束进程 父进程可以由wait函数来获得子进程结束装状态。在进程结束的时候会关闭文件描述符号做一些清理工作只保留进程返回状态等信息调用exit()子进程会关闭所有打开的进程描述符 exit会作清理工作比如说释放内存(在C里面会主动的调用析构函数)关闭文件句柄的工作包括刷新IO流。_exit(n)直接退出不会做一些清理工作也不会关闭文件描述符。#include ltsys/wait.hgtpid_t wait(int *status) 等待任意子进程结束。子进程结束状态值由status返回。如WEXITSTATUS(status) 可以获得exit(2)中返回的值status2这样就可以知道所等待的为哪个进程。如果不用这个宏转换则status512.pid_t waitpid(pid_t pid,int status,int options) 可以指定等待某个进程号pid的进程结束在使用 waitpid函数时还用到了pid参数所以还要加上#include ltsys/types.hgt关于进程等待函数还有很多宏将status转换为需要的值需要了解。3进程间通信-管道#include ltunistd.hgtint pipe(int filedes[2])4进程间通信-命名管道#include ltsys/types.hgt #include ltsys/stat.hgtint mkfifo(const char *pathname,mode_t mode)对于命名管道的操作同普通文件的操作5消息队列数据类型key_t是在头文件sys/types.h中定义的它是一个长整形的数据。keyftok(.,A) #include ltsys/types.hgt #include ltsys/ipc.hgt所属头文件#includeltsys/types.hgt #include ltsys/ipc.hgt #include ltsys/msg.hgtint msgid;msgidmsgget(k