嵌入式linuxC函数整理

2019-07-13 03:54发布

为便于以后的查阅与复习本文整理了嵌入式linux C中用到的多数函数,包括以下9个大类:     内存管理     字符串处理     时间函数     随机函数     文件IO函数     标准IO函数     格式化输入输出和错误处理函数     文件和目录函数进程相关函数 一:内存管理函数    1相关函数:malloc     头文件:#include     函数原型:void *malloc(size_t size)     函数说明:分配内存     返回值:成功返回分配的内存首地址,失败返回NULL    2相关函数:free     头文件:#include     函数原型:void free(void *ptr)     函数说明:释放内存,释放ptr为函数malloc返回的指针,调用free后ptr所指向的内存会被     统回收    3mmap(内存映射)     头文件:#include             #include     函数原型: void mmap(void *star,size_t length,int prot,int flags,int fd,off_t      offset);     函数说明:mmap用来将某个文件映射到内存中,通过对内存的读写实现对文件的操作。参数含     义如下:          start:指向映射后的内存起始地址,通常设为NULL,表示让系统来选定映射地址。操作          成功后,start里的值为映射后的内存首地址。          length:指定文件中被映射的部分的长度,以字节为单位,0表示全部映射。          prot:映射区域的使用方式,有以下选项               PROT_EXEC  映射区域可被执行        PROT_READ  映射区域可被读取               PROT_WRITE 映射区域可被写入               PROT_NONE  映射区域不能存取          flag: 设置映射区域的属性,有以下选项               MAP_FIXED 如果start指定的区域无法映射,则放弃映射               MAP_SHARED  对映射区域的修改会复制回原文件,而且允许其他映射该文件的进程                          共享               MAP_LOCKED  将映射区域锁住          fd:文件描述符,代表要映射的文件          offset:文件映射的偏移量。通常设置为0,代表从文件开始处映射,offset必须是分页                  大小的整数倍     返回值:无    4相关函数:munmap     头文件:#include     头文件:#include    函数原型: int munmap(void *start,size_t length);     函数说明:取消参数start所指向的内存映射内存。当进程结束时,内存映射会自动取消,但               关闭对应的文件描述符不会取消映射。     返回值:0:操作成功             -1:操作失败,错误原因存于errno中 二字符串处理函数:    1:相关函数:bzero     头文件:include     函数原型:void bzero(void *s ,int n)     函数说明:将参数s指向的内存区域前n个字节,全部设置为0     返回值:无    2相关函数:memcpy     头文件:#include     函数原型:void *memcpy(void *dest,const void *src,size_t n)     函数说明:拷贝src所指向的内存前n个字节到dest所指向的内存单元     返回值:返回dest的值    3相关函数:memcmp     头文件:#include     函数原型:int memcpy(const void *s1,const void *s2,size_t n);     函数说明:比较s1,s2所指向的内存区域前n个字节     返回值:0:完全相同             大于0:s1指向内存中的值大于s2指向内存中的值             小于0:s1指向内存中的值小于s2指向内存中的值    4相关函数:memset     头文件:#include     函数原型:void *memset(void *s,int c,size_t n);     函数说明:将参数s所指向的内存前n个字节以参数c填入     返回值:返回s的值    5相关函数:strcat     头文件:#include     函数原型:char *strcat(char *dest,const char *src)     函数说明:将参数str指向的字符串拷贝到dest指向的字符串尾,dest指向的内存空间要足够               大。     返回值:返回dest的值     6相关函数:strncat     头文件:#include     函数原型:char *strncat(char *dest,const char *src,size_t n)     函数说明:将参数str指向的字符串拷贝n个字符到dest指向的字符串尾,dest指向的内存               空间要足够大。     返回值:返回dest的值     7相关函数:strcmp     头文件:#include     函数原型:int strcmp(const char *s1t,const char *s2)       函数说明: 比较s1,s2所指向的字符串     返回值:0:相等             大于0:s1指向内容较大             小于0:s1指向内容较小    8相关函数:strncmp     头文件:#include     函数原型:int strncmp(const char *s1t,const char *s2,size_t n);       函数说明: 比较s1,s2所指向的字符串前n个字符     返回值:0:相等             大于0:s1指向内容较大             小于0:s1指向内容较小    9相关函数strcpy     头文件:#include     函数原型:char *strcpy(char *dest,const char *src)     函数说明:src指向内容拷贝到dest指向的地址     返回值:返回dest的值    10相关函数strncpy     头文件:#include     函数原型:char *strncpy(char *dest,const char *src,size_t n)     函数说明:src指向前n个字符内容拷贝到dest指向的地址     返回值:返回dest的值    11相关函数strlen      头文件:#inlude      函数原型:size_t strlen(const char *s)      函数说明:计算s指向字符串长度,不包含