最近在准备复试,要用DEV C++写程序,被各种功能强大的IDE宠惯的我当然不会自己去记这些函数,但往往记不住这些函数就写不出程序,于是我决定自己整理一下这些常用函数,长个记性。
目录
一、输入输出函数
二、数学函数
三、字符函数
四、字符串函数
五、动态分配函数和随机函数
一、输入输出函数
这是最常用的函数头文件,在使用时加入 #include <stdio.h>
函数原型 | 功能 | 返回值 |
int fclose(FILE *fp) | 关闭fp所指的文件,释放文件缓冲区 | 出错返回非0,否则返回0 |
int feof (FILE *fp) | 检查文件是否结束 | 遇文件结束返回非0,否则返回0 |
char *fgets(char *buf,int n, FILE *fp) | 从fp所指的文件中读取一个长度为n-1的字符串,将其存入buf所指存储区 | 返回buf所指地址,若遇文件结束或出错返回NULL |
FILE *fopen(char *filename,char *mode) | 以mode指定的方式打开名为filename的文件 | 成功,返回文件指针(文件信息区的起始地址),否则返回NULL |
int fread(char *pt,unsigned size,unsigned n, FILE *fp) | 从fp所指文件中读取长度size为n个数据项存到pt所指文件 | 读取的数据项个数 |
int fscanf (FILE *fp, char *format,args,…) | 从fp所指的文件中按format指定的格式把输入数据存入到args,…所指的内存中 | 已输入的数据个数,遇文件结束或出错返回0 |
int fprintf (FILE *fp, char *format,args,…) | 将args,…内存中的内容以format的格式存储到fp所指向的文件中 | 实际写入文件的字符个数 失败则返回-1 |
int fseek (FILE *fp,long offer,int base) | 移动fp所指文件的位置指针 | 成功返回当前位置,否则返回非0 |
int fwrite(char *pt,unsigned size,unsigned n, FILE *fp) | 把pt所指向的n*size个字节输入到fp所指文件 | 输出的数据项个数 |
int getc (FILE *fp) | 从fp所指文件中读取一个字符 | 返回所读字符,若出错或文件结束返回EOF |
int getchar(void) | 从标准输入设备读取下一个字符 | 返回所读字符,若出错或文件结束返回-1 |
char *gets(char *s) | 从标准设备读取一行字符串放入s所指存储区,用’\0’替换读入的换行符 | 返回s,出错返回NULL |
int printf(char *format,args,…) | 把args,…的值以format指定的格式输出到标准输出设备 | 输出字符的个数 |
int putchar(char ch) | 把ch输出到标准输出设备 | 返回输出的字符,若出错则返回EOF |
int puts(char *str) | 把str所指字符串输出到标准设备,将’\0’转成回车换行符 | 返回换行符,若出错,返回EOF |
int rename(char *oldname,char *newname) | 把oldname所指文件名改为newname所指文件名 | 成功返回0,出错返回-1 |
int scanf(char *format,args,…) | 从标准输入设备按format指定的格式把输入数据存入到args,…所指的内存中 | 已输入的数据的个数 |
二、数学函数
数学函数就是常用的数学操作,比如取绝对值等等,这些函数包含在<math.h>这个头文件中在使用前引用#include <math.h>
函数原型 | 功能 | 返回值 | 说明 |
int abs( int x) | 求整数x的绝对值 | 计算结果 |
|
double fabs(double x) | 求双精度实数x的绝对值 | 计算结果 |
|
double exp(double x) | 求ex的值 | 计算结果 |
|
double fabs(double x) | 求双精度实数x的绝对值 | 计算结果 |
|
double pow(double x,double y) | 计算x的y次幂的值 | 计算结果 |
|
double sqrt(double x) | 计算x的开方 | 计算结果 | x≥0 |
三、字符函数
字符函数就是常用的数学操作,这些函数包含在<ctype.h>这个头文件中在使用前引用#include <ctype.h>
函数原型说明 | 功能 | 返回值 |
int isdigit(int ch) | 检查ch是否为数字 | 是,返回1;否则返回0 |
int islower(int ch) | 检查ch是否为小写字母 | 是,返回1;否则返回0 |
int isupper(int ch) | 检查ch是否为大写字母 | 是,返回1;否则返回0 |
int tolower(int ch) | 把ch中的字母转换成小写字母 | 返回对应的小写字母 |
int toupper(int ch) | 把ch中的字母转换成大写字母 | 返回对应的大写字母 |
四、字符串函数
在C语言中没有string这一类型的数据,所谓的字符串就是字符数组,在使用前添加#include <string.h>
函数原型说明 | 功能 | 返回值 |
char *strcat(char *s1,char *s2) | 把字符串s2接到s1后面 | s1所指地址 |
char *strchr(char *s,int ch) | 在s所指字符串中,找出第一次出现字符ch的位置 | 返回找到的字符的地址,找不到返回NULL |
int strcmp(char *s1,char *s2) | 对s1和s2所指字符串进行比较 | s1<s2,返回负数;s1= =s2,返回0;s1>s2,返回正数 |
char *strcpy(char *s1,char *s2) | 把s2指向的串复制到s1指向的空间 | s1 所指地址 |
unsigned strlen(char *s) | 求字符串s的长度 | 返回串中字符(不计最后的'\0')个数 |
char *strstr(char *s1,char *s2) | 在s1所指字符串中,找出字符串s2第一次出现的位置 | 返回找到的字符串的地址,找不到返回NUL |
五、动态分配函数和随机函数
就是在申请空间(链表分配)以及随机数生成时可能有用的函数,使用时头文件#include <stdlib.h>
函数原型说明 | 功能 | 返回值 |
void *free(void *p) | 释放p所指的内存区 | 无 |
void *malloc(unsigned size) | 分配size个字节的存储空间 | 分配内存空间的地址;如不成功,返回0 |
int rand(void) | 产生0~32767的随机整数 | 返回一个随机整数 |
void exit(int state) | 程序终止执行,返回调用过程,state为0正常终止,非0非正常终止 | 无 |
现在阶段就用这些,一定能记住(狗头)
更详细的函数戳这里-->https://blog.csdn/ithomer/article/details/5691026
更多推荐
C语言常用函数大整理
发布评论