C语言函数大全精简版.docx
《C语言函数大全精简版.docx》由会员分享,可在线阅读,更多相关《C语言函数大全精简版.docx(31页珍藏版)》请在冰豆网上搜索。
C语言函数大全精简版
字符串函数
∙bcmp
∙bcopy
∙bzero
∙memccpy
∙memchr
∙memcmp
∙memcpy
∙memicmp
∙memmove
∙memset
∙movmem
∙setmem
∙stpcpy
∙strcat
∙strchr
∙strcmp
∙strcmpi
∙strcpy
∙strcspn
∙strdup
∙stricmp
∙strlen
∙strlwr
∙strncat
∙strncmp
∙strncmpi
∙strncpy
∙strnicmp
∙strpbrk
∙strrev
∙strset
∙strstr
∙strtok
∙strupr
数学函数
∙abs
∙acos
∙asin
∙atan
∙atan2
∙ceil
∙cos
∙cosh
∙exp
∙fabs
∙floor
∙fmod
∙frexp
∙hypot
∙ldexp
∙log
∙log10
∙modf
∙pow
∙pow10
∙sin
∙sinh
∙sqrt
∙tan
∙tanh
输入输出函数
∙getchar
∙kbhit
∙printf
∙putchar
系统函数
∙exit
∙itoa
字符函数
∙isalnum
∙isalpha
∙iscntrl
∙isdigit
∙islower
∙isascii
∙isgraph
∙isprint
∙ispunct
∙isspace
∙isupper
∙isxdigit
∙toascii
∙tolower
∙toupper
内存管理函数
∙calloc
∙free
∙malloc
∙realloc
字符函数
isalnum
功能:
判断字符c是否为字母或数字
说明:
当c为数字0-9或字母a-z及A-Z时,返回非零值,否则返回零。
举例:
printf("%c:
%s\n",c,isalnum(c)?
"yes":
"no");
isalpha
功能:
判断字符c是否为英文字母
说明:
当c为英文字母a-z或A-Z时,返回非零值,否则返回零。
举例:
printf("%c:
%sletter",c,isalpha(c)?
"is":
"not");
iscntrl
功能:
判断字符c是否为控制字符
说明:
当c在0x00-0x1F之间或等于0x7F(DEL)时,返回非零值,否则返回零。
举例:
printf("%x:
%s\n",c,iscntrl(c)?
"yes":
"no");
isdigit
功能:
判断字符c是否为数字
说明:
当c为数字0-9时,返回非零值,否则返回零。
举例:
printf("%c:
%s\n",c,isdigit(c)?
"yes":
"no");
islower
功能:
判断字符c是否为小写英文字母
说明:
当c为小写英文字母(a-z)时,返回非零值,否则返回零。
举例:
printf("%c:
%s\n",c,islower(c)?
"yes":
"no");
isascii
功能:
判断字符c是否为ascii码
说明:
当c为ascii码时,返回非零值,否则返回零。
ascii码指0x00-0x7F之间的字符
举例:
if(isascii(s[i]))putchar('^');
isgraph
功能:
判断字符c是否为除空格外的可打印字符
说明:
当c为可打印字符(0x21-0x7e)时,返回非零值,否则返回零。
举例:
printf("%c:
%s\n",c,isgraph(c)?
"yes":
"no");
isprint
功能:
判断字符c是否为可打印字符(含空格)
说明:
当c为可打印字符(0x20-0x7e)时,返回非零值,否则返回零。
举例:
printf("%c:
%s\n",c,isprint(c)?
"yes":
"no");
ispunct
功能:
判断字符c是否为标点符号
说明:
当c为标点符号时,返回非零值,否则返回零。
标点符号指那些既不是字母数字,也不是空格的可打印字符。
举例:
if(ispunct(s[i]))printf("^");
isspace
功能:
判断字符c是否为空白符
说明:
当c为空白符时,返回非零值,否则返回零。
空白符指空格、水平制表、垂直制表、换页、回车和换行符。
举例:
if(isspace(s[i]))putchar('.');
isupper
功能:
判断字符c是否为大写英文字母
说明:
当c为大写英文字母(A-Z)时,返回非零值,否则返回零。
举例:
printf("%c:
%s\n",c,isupper(c)?
"yes":
"no");
isxdigit
功能:
判断字符c是否为十六进制数字
说明:
当c为A-F,a-f或0-9之间的十六进制数字时,返回非零值,否则返回零。
举例:
printf("%c:
%s\n",c,isxdigit(c)?
"yes":
"no");
toascii
功能:
将字符c转换为ascii码
说明:
toascii函数将字符c的高位清零,仅保留低七位。
返回转换后的数值。
举例:
putchar(toascii(s[i]));
tolower
功能:
将字符c转换为小写英文字母
说明:
如果c为大写英文字母,则返回对应的小写字母;否则返回原来的值。
举例:
putchar(tolower(s[i]));
toupper
功能:
将字符c转换为大写英文字母
说明:
如果c为小写英文字母,则返回对应的大写字母;否则返回原来的值。
举例:
putchar(toupper(s[i]));
数学函数
abs
功能:
求整数x的绝对值
说明:
计算|x|,当x不为负时返回x,否则返回-x
举例:
printf("|%d|=%d\n",x,abs(x));
acos
功能:
求x(弧度表示)的反余弦值
说明:
x的定义域为[-1.0,1.0],值域为[0,π]。
举例:
printf("acos(%.2f)=%.4f",x,acos(x));
asin
功能:
求x(弧度表示)的反正弦值
说明:
x的定义域为[-1.0,1.0],值域为[-π/2,+π/2]。
举例:
printf("asin(%.2f)=%.4f",x,asin(x));
atan
功能:
求x(弧度表示)的反正切值
说明:
值域为(-π/2,+π/2)。
举例:
printf("atan(%.2f)=%.4f",x,atan(x));
atan2
功能:
求y/x(弧度表示)的反正切值
说明:
值域为(-π/2,+π/2)。
举例:
printf("atan2(%.3f,%.2f)=%.4f",y,x,atan2(y,x));
ceil
功能:
求不小于x的最小整数
说明:
返回x的上限,如74.12的上限为75,-74.12的上限为-74。
返回值为float类型。
举例:
printf("ceil(%.2f)=%.0f\n",x,ceil(x));
cos
原型:
externfloatcos(floatx);
功能:
求x(弧度表示)的余弦值
说明:
返回值在[-1.0,1.0]之间。
举例:
printf("cos(%.4f)=%.4f\n",x,cos(x));
cosh
原型:
externfloatcosh(floatx);
功能:
求x的双曲余弦值
说明:
cosh(x)=(e^x+e^(-x))/2
举例:
printf("cosh(%.4f)=%.4f\n",x,cosh(x));
exp
原型:
externfloatexp(floatx);
功能:
求e的x次幂
说明:
e=2.718281828...
举例:
printf("e=%f\n",exp(1.0));
fabs
原型:
externfloatfabs(floatx);
功能:
求浮点数x的绝对值
说明:
计算|x|,当x不为负时返回x,否则返回-x
举例:
printf("|%f|=%f\n",x,fabs(x));
floor
原型:
externfloatfloor(floatx);
功能:
求不大于x的最大整数
说明:
返回x的下限,如74.12的下限为74,-74.12的下限为-75。
返回值为float类型。
举例:
printf("floor(%.2f)=%.0f\n",x,floor(x));
fmod
原型:
externfloatfmod(floatx,floaty);
功能:
计算x/y的余数
说明:
返回x-n*y,符号同y。
n=[x/y](向离开零的方向取整)
举例:
printf("74.12/6.4:
%f\n",fmod(x,y));
frexp
原型:
externfloatfrexp(floatx,int*exp);
功能:
把浮点数x分解成尾数和指数。
说明:
x=m*2^exp,m为规格化小数。
返回尾数m,并将指数存入exp中。
举例:
x=frexp(64.0,&exp);
printf("64=%.2f*2^%d",x,exp);
hypot
原型:
externfloathypot(floatx,floaty);
功能:
对于给定的直角三角形的两个直角边,求其斜边的长度。
说明:
返回斜边值。
举例:
printf("3^2+4^2=%.0f^2\n",hypot(3.,4.));
ldexp
原型:
externfloatldexp(floatx,intexp);
功能:
装载浮点数。
说明:
返回x*2^exp的值。
举例:
x=ldexp(1.0,6);//1.0*2^6
printf("2^6=%.2f",x);
log
原型:
externfloatlog(floatx);
功能:
计算x的自然对数。
说明:
x的值应大于零。
举例:
log10
原型:
externfloatlog10(floatx);
功能:
计算x的常用对数。
说明:
x的值应大于零。
举例:
printf("lg(5)=%f\n",log10(5.0));
modf
原型:
externfloatmodf(floatnum,float*i);
功能:
将浮点数num分解成整数部分和小数部分。
说明:
返回小数部分,将整数部分存入*i所指内存中。
举例:
x=modf(-74.12,&i);
printf("-74.12=%.0f+(%.2f)",i,x);
pow
原型:
externfloatpow(floatx,floaty);
功能:
计算x的y次幂。
说明:
x应大于零,返回幂指数的结果。
举例:
printf("4^5=%f",pow(4.,5.));
pow10
原型:
externfloatpow10(floatx);
功能:
计算10的x次幂。
说明:
相当于pow(10.0,x)。
举例:
printf("10^3.2=%f\n",pow10(3.2));
sin
原型:
externfloatsin(floatx);
功能:
计算x(弧度表示)的正弦值。
说明:
x的值域为[-1.0,1.0]。
举例:
printf("sin(PI/2)=%f",sin(x));
sinh
原型:
externfloatsinh(floatx);
功能:
计算x(弧度表示)的双曲正弦值。
说明:
sinh(x)=(e^x-e^(-x))/2。
举例:
x=PI/4.;
printf("sinh(%.4f)=%.4f\n",x,sinh(x));
sqrt
原型:
externfloatsqrt(floatx);
功能:
计算x的平方根。
说明:
x应大于等于零。
举例:
printf("sqrt(2000)=%f",sqrt(2000.0));
tan
原型:
externfloattan(floatx);
功能:
计算x(弧度表示)的正切值。
说明:
返回x的正切值。
举例:
printf("tan(PI/4)=%f",tan(x));
tanh
原型:
externfloattanh(floatx);
功能:
求x的双曲正切值
说明:
tanh(x)=(e^x-e^(-x))/(e^2+e^(-x))
举例:
x=PI/4.;
printf("tanh(%.4f)=%.4f\n",x,tanh(x));
字符串函数
bcmp
原型:
externintbcmp(constvoid*s1,constvoid*s2,intn);
功能:
比较字符串s1和s2的前n个字节是否相等
说明:
如果s1=s2或n=0则返回零,否则返回非零值。
bcmp不检查NULL。
举例:
char*s1="GoldenGlobalView";
char*s2="Goldenglobalview";;
if(!
bcmp(s1,s2,7))
printf("s1equaltos2infirst7bytes");
else
printf("s1notequaltos2infirst7bytes");
bcopy
原型:
externvoidbcopy(constvoid*src,void*dest,intn);
功能:
将字符串src的前n个字节复制到dest中
说明:
bcopy不检查字符串中的空字节NULL,函数没有返回值。
举例:
char*s="GoldenGlobalView";
chard[20];
bcopy(s,d,6);
printf("s:
%s\n",s);
printf("d:
%s\n",d);
bzero
原型:
externvoidbzero(void*s,intn);
功能:
置字节字符串s的前n个字节为零。
说明:
bzero无返回值。
举例:
struct
{
inta;
chars[5];
floatf;
}tt;
chars[20];
bzero(&tt,sizeof(tt));//structinitializationtozero
bzero(s,20);
memccpy
原型:
externvoid*memccpy(void*dest,void*src,unsignedcharch,unsignedintcount);
功能:
由src所指内存区域复制不多于count个字节到dest所指内存区域,如果遇到字符ch则停止复制。
说明:
返回指向字符ch后的第一个字符的指针,如果src前n个字节中不存在ch则返回NULL。
ch被复制。
举例:
char*s="GoldenGlobalView";
chard[20],*p;
p=memccpy(d,s,'x',strlen(s));
memchr
原型:
externvoid*memchr(void*buf,charch,unsignedcount);
功能:
从buf所指内存区域的前count个字节查找字符ch。
说明:
当第一次遇到字符ch时停止查找。
如果成功,返回指向字符ch的指针;否则返回NULL。
举例:
char*s="Hello,Programmers!
";
char*p;
p=memchr(s,'P',strlen(s));
memcmp
原型:
externintmemcmp(void*buf1,void*buf2,unsignedintcount);
功能:
比较内存区域buf1和buf2的前count个字节。
说明:
当buf1当buf1=buf2时,返回值=0
当buf1>buf2时,返回值>0
举例:
char*s1="Hello,Programmers!
";
char*s2="Hello,programmers!
";
intr;
r=memcmp(s1,s2,strlen(s1));
memcpy
原型:
externvoid*memcpy(void*dest,void*src,unsignedintcount);
功能:
由src所指内存区域复制count个字节到dest所指内存区域。
说明:
src和dest所指内存区域不能重叠,函数返回指向dest的指针。
举例:
char*s="GoldenGlobalView";
chard[20];
memcpy(d,s,strlen(s));
d[strlen(s)]=0;
printf("%s",d);
memicmp
原型:
externintmemicmp(void*buf1,void*buf2,unsignedintcount);
功能:
比较内存区域buf1和buf2的前count个字节但不区分字母的大小写。
说明:
memicmp同memcmp的唯一区别是memicmp不区分大小写字母。
当buf1当buf1=buf2时,返回值=0
当buf1>buf2时,返回值>0
举例:
char*s1="Hello,Programmers!
";
char*s2="Hello,programmers!
";
intr;
r=memicmp(s1,s2,strlen(s1));
if(!
r)
printf("s1ands2areidentical");
else
if(r<0)
printf("s1lessthans2");
else
printf("s1greaterthans2");
memmove
原型:
externvoid*memmove(void*dest,constvoid*src,unsignedintcount);
功能:
由src所指内存区域复制count个字节到dest所指内存区域。
说明:
src和dest所指内存区域可以重叠,但复制后src内容会被更改。
函数返回指向dest的指针。
举例:
char*s="GoldenGlobalView";
memmove(s,s+7,strlen(s)-7);
s[strlen(s)-7]=0;
printf("%s",s);
memset
原型:
externvoid*memset(void*buffer,intc,intcount);
功能:
把buffer所指内存区域的前count个字节设置成字符c。
说明:
返回指向buffer的指针。
举例:
char*s="GoldenGlobalView";
memset(s,'G',6);
printf("%s",s);
movmem
原型:
externvoidmovmem(void*src,void*dest,unsignedintcount);
功能:
由src所指内存区域复制count个字节到dest所指内存区域。
说明:
src和dest所指内存区域可以重叠,但复制后src内容会被更改。
函数返回指向dest的指针。
举例:
char*s="GoldenGlobalView";
movmem(s,s+7,strlen(s)-7);
s[strlen(s)-7]=0;
printf("%s",s);
setmem
原型:
externvoidsetmem(void*buf,unsignedintcount,charch);
功能:
把buf所指内存区域前count个字节设置成字符ch。
说明:
返回指向buf的指针。
举例:
char*s="GoldenGlobalView";
setmem(s,6,'G');
printf("%s",s);
stpcpy
原型:
externchar*stpcpy(char*dest,char*src);
功能:
把src所指由NULL结束的字符串复制到dest所指的数组中。
说明:
src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest结尾处字符(NULL)的指针。
举例:
char*s="GoldenGlobalView";
chard[20];
stpcpy(d,s);
printf("%s",d);
strcat
原型:
externchar*strcat(char*dest,char*src);
功能:
把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。
说明:
src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest的指针。
举例:
chard[20]="GoldenGlobal";
char*s="View";
strcat(d,s);
printf("%s",d);
strchr
原型:
externchar*strchr(char*s,charc);
功能:
查找字符串s中首次出现字符c的位置
说明:
返回首次出现c的位置的指针,如果s中不存在c则返回NULL。
举例:
char*s="GoldenGlobalView";
char*p;
strchr(s,'V');
if(p)
printf("%s",p);
else
printf("NotFound!
");
strcmp
原型:
externintstrcmp(char*s1,char*s2);
功能:
比较字符串s1和s2。