第七章--函数

来源:互联网 发布:淘宝数据包 编辑:程序博客网 时间:2024/05/16 07:49

乐趣在于发现。编程最大的乐趣在于编写自己的函数

使用C++函数步骤:

1.函数定义 

 2.函数原型  

3.调用函数

函数分为两类:有返回值和没有返回值的函数。void函数表示没有返回值

void funcitonName(parameterList){statement(s)return;}

#include <iostream>using namespace std;void apple(int);//函数原型,无返回值。可以没有变量名,必须有类型double orange(double x);//函数原型, 返回double类型int main(){apple(5);double volumn = orange(6);cout << volumn << endl;cin.get();}void apple(int n)//函数定义{cout << "hello\n" ;}double orange(double x){return x * x;}

函数指针:

1.获取函数地址

2.声明函数指针

3.使用函数指针来调用函数

获取函数地址很简单:apple()是一个函数, apple就是该函数的地址

double apple(int); //函数原型double (*p)(int); //函数指针p = apple;//将apple()函数的地址赋值给指针

注意,函数类型和返回类型必须与指针p一致,否则出错,例如:

double orange(double); //一个函数原型

int banana(int);//另一个函数原型

double (*p)(int);

p = orange; //非法

p = banana; //非法

void person(int n, double (*p)(int));  //函数原型

person(10, apple); //使用函数,传递apple()的地址

指针调用函数:

double apple(int); //函数原型double (*p)(int); //函数指针p = apple; //将apple()函数的地址赋值给指针double x = apple(4);//使用函数名double y = (*p)(5);//使用指针pdouble y = p(5);

注意:p(5)等价于(*p)(5)

指针与const

第一种:指针指向常量对象
第二种:指针本身声明为常量

int apple = 10;int banana = 20;const int * p = &apple;*p = 20;//非法  *p = &banana;//合法的


*p是const不能修改,p不是const可以指向别的变量

int apple = 10;int banana = 20;int * const p2 = &apple;*p2 = 20;//合法  *p2 = &banana;//非法的


*p不是const可以修改值,p是const不能指向别的变量
当然也可是声明指向const对象的const指针:

int apple = 10;const int * const p = &apple;

这里p和*p都是const,都无法修改












0 0
原创粉丝点击