C语言中常用的几个头文件及库函数
不完全统计C语言标准库中的头文件有15个之多所以我主要介绍常用的这四个头文件stdio.h,string.h,math.h,stdlib.h以后用到其他的再做补充。下面上干货1.stdio.h定义了输入输出函数、类型以及宏函数几乎占了标准库的1/3。1文件访问。1FILE*fopen“filename”“mode”以mode模式打开地址为filename的文件并返回文件指针。访问模式主要是“r”只读 “w” 只写并删除已有内容 “a”追加在末尾追加“r” “w”读写 “a”追加上述结尾加“b”二进制文件操作。注意其中r是打开文件而w会创建如果文件不存在 w会覆盖原有内容a则是在原有文件末尾追加。1intfcloseFILE*f释放缓冲区数据关闭流。下面两个没太用过1FILE*freopen“filename”“mode”FILE* f以mode模式打开地址为filename的文件并将该文件与流f2关联。1intfflushFILE*f将已写到缓冲区但未写入文件中的所有数据写入文件中。2二进制输入/输出1fread*ptrsizenFILE* f从f中读取n个长度为size的对象并放入ptr指向的数组中。1fwrite*ptrsizenFILE* f从ptr指向数组中读取n个长度为size的对象并写入f中。注意要注意write与read的对象读和写都是针对文件流f的。3非格式化输入/输出1intfgetc/getcFILE*f返回流f的下一个字符到达文件末尾/发生错误则返回EOF。1intfputc/putcintcFILE*f将字符c输入到流f中。1intfgetschar* sintnFILE*f将f中下n-1个字符读入到数组s中。遇到换行符则终止。1intfputsconstchar* sFILE*f将字符串s输出到流中。1intungetintcFILE*f将c写回到f中。4格式化输入/输出按一定格式转输出。12scanf/fscanf/sscanfprintf/fprintf/sprintf注意不加f/s则是格式字符串标准输入/出函数输入/出到终端/屏幕printfconst char *format...加s输入/出到字符串中。sprintfchar *sconst char *format...加f输入/出到文件流中。 fprintfFILE *fconst char *format...5文件定位1longftellFILE*f返回当前指针位置。错误时返回-1L。1intfseekFILE*flongoffsetintorigin将当前流f指针位置设置到origin后offset个字符处。origin有SEEK_SET文件起始位置SEEK_CUR指针当前位置SEEK_END文件结束位置。1voidrewindFILE*f指针返回文件开始位置相当于fseekf0LSEEK_SET不常用1intfgetposFILE*f*p将指针当前位置记录到*p中以供fsetpos函数使用。1intfsetposFILE*fconst*p指针位置指向*p。6错误处理与文件操作1intfeofFILE*f指示文件结束一直返回0结束时返回非0值。1intferrorFILE*f如果设置了与f相关的错误指示符则返回一个非0值。1intremovechar*filename删除指定位置的文件。1intrenameconstchar*oldnameconstchar*newname改文件名否则返回非0值。1FILE*tmpfilevoid建立临时文件‘wb模式在被关闭或程序正常结束时自动删除2.string.h 分成两组一组str开头一组mem开头该组函数在memory.h中也有定义不是所有编译器都有1str1char*strcpy(char*dest,constchar*src);将字符串src复制到字符串dest中包括\0返回dest1char*strncpy(char*dest,constchar*srcn);将src中的前n个字符复制到dest中返回dest不够n个则补‘\012char*strcat(char*dest,constchar*src);char*strncat(char*dest,constchar*srcn);src连接到dest后src 中前n个字符连接到dest后。1234intstrcmp(constchar*s1,constchar*s2);intstrncmp(constchar*s1,constchar*s2n); 比较s1与s2s1s2则返回负数否则返回0比较前n个字符char*strchr(constchar*s,intc);char*strrchr(constchar*s,intc); 返回字符串s中第一次出现字符c的位置指针返回字符串s中最后一次出现字符c的位置指针c会转换成char不常见 size_t strcspn (const char *s1, const char *s2); char * strdup (const char *s); char * strerror(int errnum);2mem1void*memcpyvoid*sconstvoid*ctn将字符串ct中的前n个字符拷贝到s中并返回s。12void*memmovesctn同上一函数只是在对象重叠时仍能正确执行。void*memsetvoid*sintc n将s中的前n个字符替换成c并返回s。1intmemcmpcsctn将cs前n个字符与ct进行比较csct返回负数否则返回01void*memchrcscn返回指向c在cs中第一次出现的位置指针。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2565851.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!