[知识梳理]课本3&9.1

时间:2021-12-31 13:51:50
  1. 函数:关键词:参数、返回值、函数返回类型、函数体。

    函数按照返回类型,可以分为有参函数和无参函数。

    函数根据是否有返回值,可以分为返回值函数和非返回值函数。

  2. 函数的定义:函数的定义可以放在任意位置。

    无参函数的一般形式:类型说明符 函数名()

    {

    类型说明符

    语句

    }

    有参函数的一般形式:类型说明符 函数名(形式参数表)

    {

    类型说明符

    语句

    }

    在函数类型说明符里有不产生返回值的函数的类型说明符,为void类型。

  3. 函数在C++中都是平行的。这句话中所提到的函数是包含主函数在内的。

    在一个函数的内部,是不允许在定义另一个函数的,不能嵌套定义。

  4. 函数的调用:函数的调用及其简单,可以用  函数名(实际参数表) 来进行调用;也可以直接构成函数表达式来使用。

    内联函数的定义必须出现在对该函数的调用之前。
    递归函数不能定义为内联函数
    带有默认形参值的函数
    1、  若函数具有多个形参,则默认形参值必须自右向左连续的定义,并且在一个默认形参值的右边不能有未指定默认值的参数。
    2、  在调用一个函数时,若果省去了某个实参,则直到最右端的实参都要省去。
    3、  默认形参值的说明必须出现在函数调用之前。若函数原型中已给出了形参的默认值,则在函数定义中不得重复制定,即使所指定的默认值完全相同也不行。
    4、  在同一个作用域内,一旦定义了默认形参值,就不能在定义它。
    5、  如果几个函数说明出现在不同的作用域内,则允许对它们提供不同的默认形参值。
    6、  在函数的原型给出了形参的默认值时,形参名可以省略。

    类模板定义语法

    模板类的成员函数在类外定义的语法格式

    类模板实例化、建立对象的语法形式

    类模板的类型参数也可以采用默认值。带默认模板参数值的类模板的默认值给出顺序为从右向左,实参值结合顺序为从左向右。

    函数模板的定义形式

    函数显示实例化的格式函数名<具体函数名1, 具体函数名2,…,常量表达式>(实参表)                 

    函数重载

    类型兼容

    c++函数分类表

    类别

    原型

    功能简述

    C++头文件

    C式头文件

     

    double sqrt(x)

    求x的平方根

    cmath

    math.h

    int abs(x)

    求整型数的绝对值

    long labs(long n)

    求长整型数的绝对值

    double fabs(double x)

    求浮点数的绝对值

    double pow(double x,double y)

    x的y次幂

    duolbe exp(double x)

    e的x次幂

    double log(double x)

    In x即logex

    double log10(double x)

    log10x

    double sin(double x)

    求x的正弦值

    double cos(double x)

    求x的余弦值

    double tan(double x)

    求x的正切值

    double asin(double x)

    求x的反正弦值

    double acos(double x)

    求x的反余弦值

    double atan(double x)

    求x的反正切值

    double ceil(double x)

    求不小于x的最小整数

    double floor(double x)

    求不大于x的最大整数

    字符

    int isalpha(int c)

    c是否是字母

    iostream

    ctype.h

    int isdigit(int c)

    c是否是数字

    int tolower(int c)

    将c转化成小写字母

    int toupper(int c)

    将c转化成大写字母

    字符串

    char *strcpy(char *s1,char *s2)

    将字符串s2复制给s1

    iostream

    string.h

    unsigned strlen(char *str)

    求字符串str的长度

    内存

    操作

    void *memcpy(void *d,void *s,int c)

    将s指向的内存区域的c个字节复制到d指向的区域

    iostream

    memory.h

    类型转换

    int atoi(char *s)

    将字符串转化成整数

    iostream

    stdlib.h

    char *itoa(int v,char *s,intx)

    将整数v按x进制转成字符串s

    时间

    time_t time(time_t *timer)

    返回1970/1/1零点到目前的秒数

    ctime

    time.h

    其他

    srand(unsigned seed)

    设置随机数的种子,产生0-RAND_MAX的随机数

    iostream

    stdlib.h

    exit(int)

    终止正在执行的程序