常用Win IDE库函数

编辑器加载中...

注意:资料来源较早,以下使用float类型的函数参数目前已经全部改为double。


数学函数:

#include  < math.h >

int  abs( int  x);
float  fabs( float  x);
float  sin( float  x);
float  asin( float  x);           // x in [-1.0, 1.0]
float  cos( float  x);
float  acos( float  x);          // x in [-1.0, 1.0]
float  tan( float  x);
float  atan( float  x);
float  atan2( float  x,  float  y);   // 求x/y的反正切值
float  sinh( float  x);                  // 求x的双曲正弦值,(e^x – e^(-x)) / 2
float  cosh( float  x);                // 求x的双曲余弦值,(e^x + e^(-x) / 2)
float  tanh( float  x);                // 求x的双曲正切值,(e^x – e^(-x)) / (e^x + e^(-x))
float  ceil( float  x);
float  floor( float  x);
float  exp( float  x);
float  fmod( float  x,  float  y);     // 求x/y的余数,x – x / y
float  frexp( float  x,  int   * exp);   // 把x分解成尾数和2的指数,返回数是尾数,exp是指数
float  ldexp( float  x,  int  exp);    // 转载浮点数,返回x*2^exp的值
float  modf( float  x,  float   * i);    // 将x分解成整数和小数,返回值是小数部分,i是整数部分
float  hypot( float  x,  float  y);   // 根据勾股定理返回斜边
float  log( float  x);                     // x > 0
float  log10( float  x);                 // x > 0
float  pow( float  x,  float  y);     // x > 0
float  sqrt( float  x);                    // x > 0



字符函数:

#include  < ctype.h >

int  isalnum( int  c);        // 判断是否为0-9、a-z、A-z中的字符
int  isalpha( int  c);
int  isaldigit( int  c);
int  iscntrl( int  c);          // 判断c是否为控制字符,0X00-0X1F之间或0X7F(DEL)
int  islower( int  c);
int  isupper( int  c);
int  isascii( int  c);          // 判断是否为ASCII码,指0X00-0X7F之间的字符
int  isgraph( int  c);         // c是否为除空格之外的可打印字符,指0X21-0X7E
int  isprint( int  c);          // c是否为可打印字符,包含空格,指0x20-0x7E
int  ispunct( int  c);         // c是否为标点符号,指非字符数字,非空格的可打印字符
int  isspace( int  c);        // 空白符指空格、制表符、换页符、回车符、换行符
int  isxdigit( int  c);         // 是否16进制数字,指0-9、A-F、a-f之间的字符
int  toascii( int  c);          // 将c转换成ascii码,即高位清零,仅保留低7位
int  tolower( int  c);
int  toupper( int  c);



动态内存分配:

#include  < stdlib.h >

void   * malloc(unsigned  int  num_bytes);
void   * realloc( void   * mem_address, unsigned  int  newsize);
void   * alloc( int  num_elems,  int  elem_size);



字符串函数:

#include  < string .h >

void   * memchr( void   * buf,  char  ch, unsigned count);
// 在buf所指内存前count个字节查找字符ch,返回指向ch的指针或NULL
int  memcmp( void   * buf1,  void   * buf2, unsigned  int  count);
// 比较buf1和buf2的前count个字节,< = > 分别返回 <0 =0 >0
int  memicmp( void   * buf1,  void   * buf2, unsigned  int  count);
// 比较buf1和buf2的前count个字节,但不区分字母大小写
void   * memccpy( void   * dest,  void   * src, unsigned  char  ch, unsigned  int  count);
// 从src中复制不多于count个字节到dest,遇到字符ch则停止复制。返回指向ch后的第一个字符的指针,没有遇到ch则返回NULL,注意ch也被复制
void   * memcpy( void   * dest,  void   * src, unsigned  int  count);
// 从src中复制不多于count个字节到dest,返回指向dest的指针,注意dest和src不能重叠
void   * memmove( void   * dest,  const   void   * src, unsigned  int  count);
// 从src中复制不多于count个字节到dest,返回指向dest的指针,其中dest和src所指内存区域可以重叠,但是src内容会被更改
void   * memeset( void   * buffer,  int  c,  int  count);
// 将buffer所指区域前count个字节设置成c字符,返回buffer指针

   //×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
   //分界线
   //×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

char   * strcpy( char   * dest,  char   * src);
//  src所有字符串复制到dest中,两者区域不可重叠,且dest必须要有足够空间,返回dest指针
char   * strncpy( char   * dest,  char   * src,  int  n);
//  src前n个字符复制到dest中,两者区域不可重叠,且dest必须要有足够空间,返回dest指针。如果src前n个字符不含"\0",则dest不以"\0"结束;如果src长度小于n,则用"\0"填充dest直到n个字节复制完毕
char   * strdup( char   * s);
// 函数内malloc()分配空间,返回指向被复制的字符串的指针,需要在函数中人工free掉分配的空间

char   * strcat( char   * dest,  char   * src);
// 联接dest和src,dest改变,两者区域不可重叠,且dest必须要有足够空间,返回dest指针
char   * strncat( char   * dest,  char   * src,  int  c);
// 联接dest和src前n个字符,两者区域不可重叠,且dest必须要有足够空间,返回dest指针

int  strcmp( char   * s1,  char   * s2);
// 比较s1和s2,< = > 分别为 <0 =0 >0
int  strncmp( char   * s1,  char   * s2,  int  n);
// 比较s1和s2前n个字符,同上
int  stricmp( char   * s1,  char   * s2);
// 比较s1和s2,不区分字符大小写
int  strnicmp( char   * s1,  char   * s2,  int  n);
// 比较s1和s2前n个字符,不区分字符大小写

   char *strchr(char *s, char c);
//查找s中c的首次出现位置,返回c位置指针或者NULL

int  strcspn( char   * s1,  char   * s2);
// 在s1中搜索s2中出现的字符,返回第一个出现在s1中的下标值,亦即在s1中出现而s2中没有出现的字符串长度
char   * strpbrk( char   * s1,  char   * s2);
// 在s1中搜索s2中出现的字符,返回第一个出现在s1中的字符指针或者NULL
   char *strstr(char *haystack, char *needle);
//从haystack中寻找needle第一次出现的位置,返回第一次出现的位置指针或者NULL

int  strlen( char   * s);
// 返回s的长度,不包括结束符NULL
char   * strlwr( char   * s);
// 将s转换为小写字母形式,返回指向s的指针
char   * strupr( char   * s);
// 将s转换为大写字母形式,返回指向s的指针
char   * strrev( char   * s);
// 将s的所有字符顺序颠倒过来,不包括“\0”,返回s指针
char   * strset( char   * s,  char  c);
// 将s的字符设置成字符c("\0"不变),返回s的指针

转载于:https://www.cnblogs.com/yysblog/archive/2011/11/10/2244329.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值