现在的位置: 首页 > 综合 > 正文

Linux C函数小总结

2018年04月22日 ⁄ 综合 ⁄ 共 4941字 ⁄ 字号 评论关闭

 http://hi.baidu.com/mathspace/blog/item/3049ebd3b6edf4d8a8ec9a3e.html

一、日期时间
1、char *asctime(const struct tm *timeptr)
将timeptr所指的tm结构中的信息转换为真实世界所使用的时间日期表示方法,然后将结果以字符串形态返回  
2、char *ctime(const time_t *timep)
将timep所指的time_t结构中的信息转换为真实世界所使用的时间日期表示方法,然后将结果以字符串形态返回
3、int gettimeofday(struct timeval *tv, struct timezone *tz)
将当前的时间由tv所指的结构返回
4、time_t mktime(struct tm *timeptr)
将参数timeptr所指的tm结构数据转换成从公元1970年1月1日0时0分0秒算到今天所经过的秒数
5、struct tm *localtime(const time_t *timep)
将timep所指的time_t结构中的信息转换为真实世界所使用的时间日期表示方法,然后将结果由结构tm返回  
6、time_t time(time_t *t)
取得当前时间,返回从公元1970年1月1日0时0分0秒算到当前时间所经过的秒数
二、文件操作
1、int close(int fd)
关闭文件。参数fd为先前open()或creat()所返回的文件描述词
2、int open(const char *pathname, int flags, mode_t mode)
打开文件
3、int creat(const char *pathname, mode_t mode)
建立文件
4、int flock(int fd, int operation)
将operation所指定的方式对参数fd所指的文件做各种锁定或者解除锁定的动作
5、size_t read(int fd, void *buf, size_t count)
将fd所指的文件传送count个字节到buf指针所指的内存中
6、size_t write(int fd, const void *buf, size_t count)
将buf指针所指的内存写入count个字节到fd所指的文件
三、字符串转换
1、double atof(const char *ptr)
将字符串ptr转换成double型数
2、int atof(const char *ptr)
将字符串ptr转换成int型数
3、long atof(const char *ptr)
将字符串ptr转换成long型数
4、char toupper(char c)
如果参数c为小写字母则将对应大写字母返回
5、char tolower(char c)
如果参数c为大写字母则将对应小写字母返回
6、double strtod(const char *ptr, char **endptr)
将字符串ptr转换成double型
7、long strtol(const char *ptr, char **endptr, int base)
将字符串ptr根据参数base所采取的进制方式来转换成long型
8、unsigned long strtoul(const char *ptr, char **endptr, int base)
将字符串ptr根据参数base所采取的进制方式来转换成无符号的long型
四、环境变量
1、char *getenv(char *name)
获取环境变量name的内容
2、int putenv(const char *string)
改变或者增加环境变量的内容,参数string的格式为 "name=value"
3、int setenv(const char *name,const char *value,int overwrite)
改变或者增加环境变量name的内容
4、int unsetenv(const char *name)
取消设置环境变量name
五、进程操作
1、int system(const char *string)
执行参数string字符串所代表的命令
2、int execl(const char *path, const *arg, ...)
执行参数path字符串所代表的文件路径
3、int atexit(void (*function)(void))
设置程序正常结束前调用的函数为function()
4、void exit(int status)
结束当前进程,并且将参数status返回给父进程
5、int printf(const char *format, ...)
格式化输出数据
6、int scanf(const char *format, ...)
格式化输入数据
7、int sprintf(char *str, char *format, ...)
格式化输出数据,并将结构复制到参数str所指的字符串数组
8、int sscanf(char *str, char *format, ...)
将参数str的字符串根据参数format字符串来转换并且格式化数据
9、pid_t wait(int *status)
暂停目前进行的执行,直到有信号到来或子进程结束
六、信号处理
1、unsigned int sleep(unsigned int seconds)
当前进程暂停,直到参数seconds所指定的时间,或者被信号所中断
2、int pause(void)
当前进程暂停(进入睡眠状态),直到被信号所中断
3、int ferror(FILE *stream)
检查参数stream所指定的文件流是否发生错误
4、unsigned int alarm(unsigned int seconds)
设置信号SIGALRM在经过参数seconds指定的秒数后传递给目前的进程
5、int pclose(FILE *stream)
关闭由popen所建立的管道及文件指针
6、FILE *popen(const char *command,const char *type)
建立管道连接到字进程的标准输出设备或者标准输入设备
7、void (*signal(int signum,void(* handler)(int)))(int)
依参数signum指定的信号编号来设置该信号的处理函数
8、int sigaddset(sigset_t *set, int signum)
将参数signum代表的信号加入到参数set的信号集里
9、int sigdelset(sigset_t *set, int signum)
将参数signum代表的信号从参数set的信号集里删除
10、int sigemptyset(sigset_t *set)
将参数set的信号集初始化并清空
11、int sigfillset(sigset_t *set)
将参数set的信号集初始化,然后把所有的信号加入到此信号集里
12、int sigismember(const sigset_t *set, int signum)
测试参数signum代表的信号是否已经加入到参数set的信号集里
13、char *strerror(int errnum)
根据错误代码errnum来返回错误原因的描述字符串
七、内存控制
1、void *malloc(size_t size)
配置大小为size的内存空间
2、void *calloc(size_t nmemb, size_t size)
配置nmemb个相临的内存单位,每一个单位大小为size的内存空间
3、void free(void *ptr)
释放原先配置的内存
八、文件内容
1、FILE *fopen(const char *path, const char *mode)
以mode方式打开文件
2、int fclose(FILE *stream)
关闭先前fopen()打开的文件
3、int fputc(char c, FILE *stream)
将字符c写入参数stream指定的文件中
4、int fputs(const char *s, FILE *stream)
将参数s所指的字符串写入参数stream指定的文件中
5、int fgetc(FILE *stream)
从参数stream所指的文件中读取一个字符
6、int fgets(const char *s, int size, FILE *stream)
从参数stream所指的文件中读取指定个字符,保存到参数s所指的字符串中
7、int fileno(FILE *stream)
返回文件流stream所指文件的描叙词
8、size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream)
从文件流中读取数据存放到ptr所指向的数据空间
9、int fflush(FILE *stream)
将缓冲区内的数据写回参数stream指定的文件中
10、FILE *freopen(const char *path, const char *mode, FILE *stream)
将原stream所打开的文件流关闭,然后打开参数path的文件
九、内存及字符串
1、char *strcat(char *dest, const char *src)
将参数src字符串拷贝到参数dest所指的字符串尾
2、char *strncat(char *dest, const char *src, size_t n)
将参数src字符串拷贝n个字符到参数dest所指的字符串尾
3、int strcmp(const char *s1, const char *s2)
比较参数s1和s2字符串
4、int strcasecmp(const char *s1, const char *s2)
比较参数s1和s2字符串,忽略大小写的差异
5、int strncasecmp(const char *s1, const char *s2, size_t n)
比较参数s1和s2字符串的前n个字符,忽略大小写的差异
6、size_t strlen(const char *s)
返回字符串s的长度
7、char *strcpy(char *dest, const char *src)
将参数src字符串拷贝到参数dest所指的地址
8、char *strncpy(char *dest, const char *src, size_t n)
将参数src字符串拷贝n个字符到参数dest所指的字符串尾
9、char *strchr(const char *s, char c)
查找出参数s字符串中第一个出现的参数c地址,然后将该字符出现的地址返回
10、char *strrchr(const char *s, char c)
查找出参数s字符串中最后一个出现的参数c地址,然后将该字符出现的地址返回
11、char *strstr(const char *string, const char *substring)
从字符串string中搜寻字符串substring,并将第一次出现的地址返回
12、char *strtok(char *s, const char *delim)
分割字符串成一个个片段
13、char *strdup(const char *s)
复制字符串
14、char *index(const char *s,char c)
查找出参数s字符串中第一个出现的参数c地址,然后将该字符出现的地址返回
15、char *rindex(const char *s,char c)
查找出参数s字符串中最后一个出现的参数c地址,然后将该字符出现的地址返回
16、void *memcpy(void *dest, const void *src, size_t n)
拷贝src所指的内存内容前n个字节到dest所指的内存地址上
17、void *memset(void *s, char c, size_t n)
将参数s所指的内存区域前n个字节以参数c填入,然后返回指向s的指针
18、int memcmp(const void *s1, const void *s2, size_t n)
比较参数s1和s2所指内存区间的前n个字符
19、int bcmp(const void *s1, const void *s2, int n)
比较s1和s2所指的内存区间的前n个字节
20、void bcopy(const void *src, void *dest, int n)
同memcpy()
21、void bzero(void *s, int n)
将参数s所指的内存区域前n个字节全部设置为零值

 

抱歉!评论已关闭.