C++实用函数

来源:互联网 发布:指纹机可以恢复数据么 编辑:程序博客网 时间:2024/05/18 02:40

modf

语法:

  #include <math.h>

  double modf( double num, double *i );

功能: 函数将参数num 分割为整数和小数,返回小数部分并将整数部分赋给i

div

语法:

  #include <stdlib.h>

  div_t div( int numerator, int denominator );

功能: 函数返回参数numerator / denominator的商和余数。结构类型div_t定义在stdlib.h:

    int quot;     // 商数

    int rem;      // 余数

以下代码显示x/y的商和余数:

    div_t temp;

    temp = div( x, y );

    printf( "%d divided by %d yields %d with a remainder of %d\n", x, y, temp.quot, temp.rem );

qsort

语法:

   #include <stdlib.h> 

void qsort( void *buf, size_t num, size_t size, int (*compare)(const void *, const void *) );

功能: 对buf 指向的数据(包含num ,每项的大小为size)进行快速排序。如果函数compare 的第一个参数小于第二个参数,返回负值;如果等于返回零值;如果大于返回正值。函数对buf 指向的数据按升序排序。

bsearch

语法:

#include <stdlib.h>

void *bsearch( const void *key, const void *buf, size_t num, size_t size, int (*compare)(const void *, const void *) );

功能: 函数用折半查找法在从数组元素buf[0]buf[num-1] 匹配参数key。如果函数compare 的第一个参数小于第二个参数,返回负值;如果等于返回零值;如果大于返回正值。数组buf 中的元素应以升序排列。函数bsearch()的返回值是指向匹配项,如果没有发现匹配项,返回NULL

atof

语法:

#include <stdlib.h>

   double atof( const char *str );

功能:将字符串str转换成一个双精度数值并返回结果。 参数str 必须以有效数字开头,但是允许以“E”或“e”除外的任意非数字字符结尾。例如:

    x = atof( "42.0is_the_answer" );

x的值为42.0

atoi

语法:

  #include <stdlib.h>

  int atoi( const char *str );

功能:将字符串str转换成一个整数并返回结果。参数str 以数字开头,当函数从str 中读到非数字字符则结束转换并将结果返回。例如,

    i = atoi( "512.035" );

的值为 512

atol语法:

#include <stdlib.h>

  long atol( const char *str );

功能:将字符串转换成长整型数并返回结果。函数会扫描参数str字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时才结束转换,并将结果返回。例如,

    x = atol( "1024.0001" );

x的值为1024L

memset

语法:

  #include <string.h>

  void *memset( void *buffer, int ch, size_t count );

功能函数拷贝ch buffer 从头开始的count 个字符里并返回buffer指针。 memset() 可以应用在将一段内存初始化为某个值。例如:

    memset( the_array, '\0', sizeof(the_array) );

这是将一个数组的所以分量设置成零的很便捷的方法。

注意不能用这个函数给int型的数组赋上一个非零值,它的作用是给每一个字节赋上一个值。

strchr

语法:

  #include <string.h>

  char *strchr( const char *str, int ch );

功能:函数返回一个指向str ch 首次出现的位置,当没有在str 中找ch到返回NULL

原创粉丝点击