1、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 c
2、os 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 rea
3、lloc ctype.h 字符函数isalnum 功能:判断字符c是否为字母或数字 说明:当c为数字0-9或字母a-z及A-Z时,返回非零值,否则返回零。 举例: printf(%c:%sn,c,isalnum(c)?yes:no);isalpha 功能:判断字符c是否为英文字母 说明:当c为英文字母a-z或A-Z时,返回非零值,否则返回零。 举例: printf(%c: %s letter,c,isalpha(c)?is:not);iscntrl 功能:判断字符c是否为控制字符 说明:当c在0x00-0x1F之间或等于0x7F(DEL)时,返回非零值,否则返回零。 举例: printf(%x
4、:%sn,c,iscntrl(c)?yes:no);isdigit 功能:判断字符c是否为数字 说明:当c为数字0-9时,返回非零值,否则返回零。 举例: printf(%c:%sn,c,isdigit(c)?yes:no);islower 功能:判断字符c是否为小写英文字母 说明:当c为小写英文字母(a-z)时,返回非零值,否则返回零。 举例: printf(%c:%sn,c,islower(c)?yes:no);isascii 功能:判断字符c是否为ascii码 说明:当c为ascii码时,返回非零值,否则返回零。ascii码指0x00-0x7F之间的字符 举例: if(isascii(s
5、i) putchar();isgraph 功能:判断字符c是否为除空格外的可打印字符 说明:当c为可打印字符(0x21-0x7e)时,返回非零值,否则返回零。 举例: printf(%c:%sn,c,isgraph(c)?yes:no);isprint 功能:判断字符c是否为可打印字符(含空格) 说明:当c为可打印字符(0x20-0x7e)时,返回非零值,否则返回零。 举例: printf(%c:%sn,c,isprint(c)?yes:no);ispunct 功能:判断字符c是否为标点符号 说明:当c为标点符号时,返回非零值,否则返回零。 标点符号指那些既不是字母数字,也不是空格的可打印字符
6、。 举例: if(ispunct(si) printf();isspace 功能:判断字符c是否为空白符 说明:当c为空白符时,返回非零值,否则返回零。 空白符指空格、水平制表、垂直制表、换页、回车和换行符。 举例: if(isspace(si) putchar(.);isupper 功能:判断字符c是否为大写英文字母 说明:当c为大写英文字母(A-Z)时,返回非零值,否则返回零。 举例: printf(%c:%sn,c,isupper(c)?yes:no);isxdigit 功能:判断字符c是否为十六进制数字 说明:当c为A-F,a-f或0-9之间的十六进制数字时,返回非零值,否则返回零。
7、举例: printf(%c:%sn,c,isxdigit(c)?yes:no);toascii 功能:将字符c转换为ascii码 说明:toascii函数将字符c的高位清零,仅保留低七位。返回转换后的数值。 举例: putchar(toascii(si);tolower 功能:将字符c转换为小写英文字母 说明:如果c为大写英文字母,则返回对应的小写字母;否则返回原来的值。 举例: putchar(tolower(si);toupper 功能:将字符c转换为大写英文字母 说明:如果c为小写英文字母,则返回对应的大写字母;否则返回原来的值。 举例: putchar(toupper(si);math
8、.h 数学函数abs 功能:求整数x的绝对值 说明:计算|x|, 当x不为负时返回x,否则返回-x 举例: printf(|%d|=%dn,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)。 举例: print
9、f(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)=%.0fn,x,ceil(x);cos 原型:extern float cos(float x); 功能:求x(弧度表示)的余弦值 说明:返回值在-1.0,1.0之间。 举例: pr
10、intf(cos(%.4f)=%.4fn,x,cos(x);cosh 原型:extern float cosh(float x); 功能:求x的双曲余弦值 说明:cosh(x)=(ex+e(-x)/2 举例: printf(cosh(%.4f)=%.4fn,x,cosh(x);exp 原型:extern float exp(float x); 功能:求e的x次幂 说明:e=2.718281828.举例: printf(e=%fn,exp(1.0);fabs 原型:extern float fabs(float x); 功能:求浮点数x的绝对值 说明:计算|x|, 当x不为负时返回x,否则返回-
11、x 举例: printf(|%f|=%fn,x,fabs(x);floor 原型:extern float floor(float x); 功能:求不大于x的最大整数 说明:返回x的下限,如74.12的下限为74,-74.12的下限为-75。返回值为float类型。 举例: printf(floor(%.2f)=%.0fn,x,floor(x);fmod 原型:extern float fmod(float x, float y); 功能:计算x/y的余数 说明:返回x-n*y,符号同y。n=x/y(向离开零的方向取整) 举例: printf(74.12/6.4: %fn,fmod(x,y);
12、 frexp 原型:extern float frexp(float x, int *exp); 功能:把浮点数x分解成尾数和指数。 说明:x=m*2exp,m为规格化小数。返回尾数m,并将指数存入exp中。 举例: x=frexp(64.0,&exp); printf(64=%.2f*2%d,x,exp);hypot 原型:extern float hypot(float x, float y); 功能:对于给定的直角三角形的两个直角边,求其斜边的长度。 说明:返回斜边值。 举例: printf(32+42=%.0f2n,hypot(3.,4.);ldexp 原型:extern float
13、ldexp(float x, int exp); 功能:装载浮点数。 说明:返回x*2exp的值。 举例: x=ldexp(1.0,6); / 1.0*26 printf(26=%.2f,x);log 原型:extern float log(float x); 功能:计算x的自然对数。 说明:x的值应大于零。 举例: printf(ln(e)=%fn, log(M_E); / M_E is 2.71828., defined in math.hlog10 原型:extern float log10(float x); 功能:计算x的常用对数。 说明:x的值应大于零。 举例: printf(lg
14、(5)=%fn, log10(5.0);modf 原型:extern float modf(float num, float *i); 功能:将浮点数num分解成整数部分和小数部分。 说明:返回小数部分,将整数部分存入*i所指内存中。 举例: x=modf(-74.12,&i); printf(-74.12=%.0f+(%.2f),i,x);pow 原型:extern float pow(float x, float y); 功能:计算x的y次幂。 说明:x应大于零,返回幂指数的结果。 举例: printf(45=%f,pow(4.,5.);pow10 原型:extern float pow1
15、0(float x); 功能:计算10的x次幂。 说明:相当于pow(10.0,x)。 举例: printf(103.2=%fn,pow10(3.2);sin 原型:extern float sin(float x); 功能:计算x(弧度表示)的正弦值。 说明:x的值域为-1.0,1.0。 举例: x=M_PI/2; / M_PI=PI=3.14159265., defined in math.h printf(sin(PI/2)=%f,sin(x);sinh 原型:extern float sinh(float x); 功能:计算x(弧度表示)的双曲正弦值。 说明:sinh(x)=(ex-e
16、(-x)/2。举例: x=PI/4.; printf(sinh(%.4f)=%.4fn,x,sinh(x);sqrt 原型:extern float sqrt(float x); 功能:计算x的平方根。 说明:x应大于等于零。 举例: printf(sqrt(2000)=%f,sqrt(2000.0);tan 原型:extern float tan(float x); 功能:计算x(弧度表示)的正切值。 说明:返回x的正切值。 举例: x=M_PI/4; / M_PI=PI=3.14159265., defined in math.h printf(tan(PI/4)=%f,tan(x);ta
17、nh 原型:extern float tanh(float x); 功能:求x的双曲正切值 说明:tanh(x)=(ex-e(-x)/(e2+e(-x) 举例: x=PI/4.; printf(tanh(%.4f)=%.4fn,x,tanh(x);string.h 字符串函数bcmp 原型:extern int bcmp(const void *s1, const void *s2, int n); 功能:比较字符串s1和s2的前n个字节是否相等 说明:如果s1=s2或n=0则返回零,否则返回非零值。bcmp不检查NULL。 举例: char *s1=Golden Global View; c
18、har *s2=Golden global view; if(!bcmp(s1,s2,7) printf(s1 equal to s2 in first 7 bytes); else printf(s1 not equal to s2 in first 7 bytes);bcopy 原型:extern void bcopy(const void *src, void *dest, int n); 功能:将字符串src的前n个字节复制到dest中 说明:bcopy不检查字符串中的空字节NULL,函数没有返回值。 举例: char *s=Golden Global View; char d20;
19、bcopy(s,d,6); printf(s: %sn,s); printf(d: %sn,d);bzero 原型:extern void bzero(void *s, int n); 功能:置字节字符串s的前n个字节为零。 说明:bzero无返回值。 举例: struct int a; char s5; float f; tt; char s20; bzero(&tt,sizeof(tt); / struct initialization to zero bzero(s,20);memccpy 原型:extern void *memccpy(void *dest, void *src, un
20、signed char ch, unsigned int count); 功能:由src所指内存区域复制不多于count个字节到dest所指内存区域,如果遇到字符ch则停止复制。 说明:返回指向字符ch后的第一个字符的指针,如果src前n个字节中不存在ch则返回NULL。ch被复制。 举例: char *s=Golden Global View; char d20,*p; p=memccpy(d,s,x,strlen(s);memchr 原型:extern void *memchr(void *buf, char ch, unsigned count); 功能:从buf所指内存区域的前coun
21、t个字节查找字符ch。 说明:当第一次遇到字符ch时停止查找。如果成功,返回指向字符ch的指针;否则返回NULL。 举例: char *s=Hello, Programmers!; char *p; p=memchr(s,P,strlen(s);memcmp 原型:extern int memcmp(void *buf1, void *buf2, unsigned int count); 功能:比较内存区域buf1和buf2的前count个字节。 说明: 当buf1buf2时,返回值buf2时,返回值0 举例: char *s1=Hello, Programmers!; char *s2=He
22、llo, programmers!; int r; r=memcmp(s1,s2,strlen(s1);memcpy 原型:extern void *memcpy(void *dest, void *src, unsigned int count); 功能:由src所指内存区域复制count个字节到dest所指内存区域。 说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。 举例: char *s=Golden Global View; char d20; memcpy(d,s,strlen(s); dstrlen(s)=0; printf(%s,d);memicmp 原型
23、:extern int memicmp(void *buf1, void *buf2, unsigned int count); 功能:比较内存区域buf1和buf2的前count个字节但不区分字母的大小写。 说明:memicmp同memcmp的唯一区别是memicmp不区分大小写字母。 当buf1buf2时,返回值buf2时,返回值0 举例: char *s1=Hello, Programmers!; char *s2=Hello, programmers!; int r; r=memicmp(s1,s2,strlen(s1); if(!r) printf(s1 and s2 are ide
24、ntical); else if(r0) printf(s1 less than s2); else printf(s1 greater than s2);memmove 原型:extern void *memmove(void *dest, const void *src, unsigned int count); 功能:由src所指内存区域复制count个字节到dest所指内存区域。 说明:src和dest所指内存区域可以重叠,但复制后src内容会被更改。函数返回指向dest的指针。 举例: char *s=Golden Global View; memmove(s,s+7,strlen(
25、s)-7); sstrlen(s)-7=0; printf(%s,s);memset 原型:extern void *memset(void *buffer, int c, int count); 功能:把buffer所指内存区域的前count个字节设置成字符c。 说明:返回指向buffer的指针。 举例: char *s=Golden Global View; memset(s,G,6); printf(%s,s);movmem 原型:extern void movmem(void *src, void *dest, unsigned int count); 功能:由src所指内存区域复制c
26、ount个字节到dest所指内存区域。 说明:src和dest所指内存区域可以重叠,但复制后src内容会被更改。函数返回指向dest的指针。 举例: char *s=Golden Global View; movmem(s,s+7,strlen(s)-7); sstrlen(s)-7=0; printf(%s,s);setmem 原型:extern void setmem(void *buf, unsigned int count, char ch); 功能:把buf所指内存区域前count个字节设置成字符ch。 说明:返回指向buf的指针。 举例: char *s=Golden Global
27、 View; setmem(s,6,G); printf(%s,s);stpcpy 原型:extern char *stpcpy(char *dest,char *src); 功能:把src所指由NULL结束的字符串复制到dest所指的数组中。 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。 返回指向dest结尾处字符(NULL)的指针。 举例: char *s=Golden Global View; char d20; stpcpy(d,s); printf(%s,d);strcat 原型:extern char *strcat(char *dest,char *src); 功能:把src所指字符串添加到dest结尾处(覆盖dest结尾处的0)并添加0。 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。 返回指向dest的指针。 举例: char d20=Golden Global; char *s= View; strcat(d,s); printf(%s,d);strchr 原型:exte
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1