linux中C语言的扩展库函数

上传人:汽*** 文档编号:506588453 上传时间:2022-11-17 格式:DOC 页数:20 大小:79.50KB
返回 下载 相关 举报
linux中C语言的扩展库函数_第1页
第1页 / 共20页
linux中C语言的扩展库函数_第2页
第2页 / 共20页
linux中C语言的扩展库函数_第3页
第3页 / 共20页
linux中C语言的扩展库函数_第4页
第4页 / 共20页
linux中C语言的扩展库函数_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《linux中C语言的扩展库函数》由会员分享,可在线阅读,更多相关《linux中C语言的扩展库函数(20页珍藏版)》请在金锄头文库上搜索。

1、c语言标准库函数参考网页:http:/ : 标准输入输出函数集合. : 判断字符类型(是否大写,数字,空格)的函数集合. : 操作字符串的函数集合. : 数学应用相关函数集合. : 工具集,包括类型转换和一些系统函数. : 增加断言功能的集合. : 不定参数的工具包.例如printf函数就用到此包. : 支持函数跳转功能的集合. : 处理中断的集合. : 处理日期和时间的集合. : 整数类型最大值和最小值集合.和具体实现有关. : 浮点类型最大值和最小值集合.和具体实现有关.1.标准格式化输入、输出类函数 涉及的头文件有stdio.h和stdarg.h *scanf 函数:格式化输入字符串 *

2、printf 函数:格式化输出字符串 *putchar 函数:输出字符到标准输出 *getchar 函数:从标准输入获取字符 *putc 函数:向文件输出字符 *getc 函数:从文件输入字符 while(c=getchar()!=EOF) putchar(c)c=getc(pFile) getchar()等价于getc(stdin) *gets 函数:获得字符串 *puts 函数: 输出指定字符串 *ungetc 函数:把字符写回流中2.字符处理及转换函数 *sprintf 函数:格式化输出字符串到一个缓冲区 sprintf(s,%d,123) sprintf(s,%08X,456) ;转1

3、6进制 sprintf(s,%10.3f,3.1434) *strcat和strncat函数:字符串连接 char *strncat(char *dest, const char *src, size_t n) *strcpy和strncpy函数:字符串复制 char strncpy(char *dest, const char *src, size_t maxlen) *strcmp和strncmp函数: 字符串比较 int strcmp(const char *s1,const char *s2) s1s2 return 1 s1=s2return0 s1s2 return -1 *str

4、len 函数:获取字符串长度 *strchr和strrchr 函数: 字符/字符串定位 strchar:定位一个字符第一次出现的位置 strrchr:定位一个字符最后一次出现的位置 *strstr函数:字符串查找*strupr和strlwr函数:字母形式转换 *strdup和strndup函数:字符串复制char * strdup(const char *s) 将字符串s复制到指定的内存单元3.数学计数类函数 div acos atan cos tan cosh exp frexp ldexp log modf pow sqrt ceil abs floor4.数据结构和算法类函数 *bsea

5、rch函数:二元搜索 *lfind函数:线性搜索 *lsearch函数:线性搜索 *qsort函数:利用快速排序法排列数组 *rand函数:产生随机数5.文件I/O操作类相关函数 *fopen函数:打开文件 *fclose函数:关闭文件 *fgetc函数:从文件中读取一个字符 fp=fopen(exit,r) while(c=fgetc(fp)!=EOF) *fputc函数:将一指定字符写入文件流 *fgets函数:从文件中读取一字符串 *fputs函数:将一指定字符串写入文件内 *rewind函数:重设文件流的读写位置为文件开头 *ftell函数:取得文件流的读取位置 *fseek函数:取得

6、文件流的读取位置 *fwrite函数:建文件写至文件流 *fread函数:从文件流读取数据 *fgetpos函数:获得文件位置 把stream的当前位置记录在*position中,供随后的fsetpos()调用使用 *fsetpos函数:设置文件位置6.工具函数 *assert函数:程序诊断*setjmp 函数:保存调用的linux中C语言的扩展库函数参考书:嵌入式Linux上的C语言编程实践1. 文件I/O操作函数 *open函数:打开文件 int open(const char * pathname, int flags) *close函数:关闭文件 *read函数:读文件 ssize_t

7、 read(int_fd, void * buf, size_t count) 将fd所指的文件传送count个字节到buf指针所指的内存中。 *write函数:写文件 ssize_t write (int fd, const void * buf, size_t count) 把以参数buf为起始的内存中的count个字节写入到参数fd所指的文件中,文件读写位置也会随之移动。 *lseek函数:文件定位 off_t lseek(int fildes , off_t offset ,int whence);retuen 当前的读写位置 *flock函数:锁定文件 int flock(int f

8、d, int operation) *mmap函数和munmap函数:内存映射 int munmap(void *start, size_t length) 将某个文件内容映射到内存中,对该内存区域的存取既是直接对该文件内容的读写。 *create函数:创建新文件 int create (const char * pathname, mode_t mode)*fcntl函数:改变已打开的文件属性 int fcntl(int fields, int cmd, int arg) 若执行成功则返回新的描述符,否则返回-12.文件权限相关的操作函数 *access函数:判断是否具有存取文件的权限 in

9、t access(const char * pathname,int mode) if (0=access(argv1,W_OK) R_OK X_OK F_OK *chown函数和fchown函数:改变文件的所有者 int fchown(int fd, uid_t owner, gid_t group) *chmod函数和fchmod函数:改变权限int fchmod(int fildes, mode_t mode) *unlink函数:删除文件3.用户组操作函数 *getegid函数和setegid函数:获得/设置有效的组识别码 gid_t gete (gid_t egid) *geteui

10、d函数和seteuid函数:获得/设置真实的用户识别码 uid_t getuid (void)4.信号类函数 *kill函数:传送信号给指定的进程int kill(pid_t pid, int sig) *rais函数:信号发送 int raise(int sig) *alarm函数:设置定时器 unsigned int alarm (unsigned int seconds) *signal函数:信号安装函数sighandler_t signal(int signum, sighandler_t handler)5.进程处理函数 *getpid函数和getppid函数:获得进程ID和父进程I

11、Dpid_t getpid(void) pid_t getppid(void) *fork函数:建立子进程 pid_t fork(void) 父进程得到的返回值是子进程的进程号,而子进程则返回0*sleep函数:让进程暂停一段时间unsigned int sleep(unsigned int seconds) *exec函数:找到可执行文件 *_exit函数:结束进程执行动态内存的堆与栈参考书:嵌入式Linux上的C语言编程实践1.程序内存区域的使用 存储区域分为:静态和动态静态:只读数据区(RO DATA),已初始化读写数据区(RW DATA),未初始化读写数据区(BSS) 动态:堆内存(h

12、eap)和栈内存(stack) 堆内存是从低地址向高地址分配,栈内存是从高地址向低地址分配2.C程序中栈空间的使用 在C语言程序中,栈空间是由编译器管理的,在程序中可以体现栈空间使用的例子是参数传递,返回值的使用以及自动变量的空间。3.C程序中堆空间的使用 在C语言程序中,堆内存区域的分配和释放是通过调用库函数来完成的,他们的使用需要包含标准库文件: #include 实现堆内存分配和释放的四个主要函数为: void * malloc(size_t size) 分配内存空间 void free(void *ptr) 释放内存空间 void * calloc(size_t nmemb, size_t size) 分配内存空间 void * realloc(void * ptr, size_t size) 重新分配内存空间4.堆内存和栈内存使用的比较 最经典的swap例子: void swap(int a, int b) int tmp;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号