1.函数定义 函数是由函数返回类型,函数名 ,函数参数,还有函数体组成。
2.函数调用,有函数名和参数列表的实参进行调用。一个大括号就是一个函数作用域
,在改作用于定义变量就属于局部变量,也就是说当该函数体执行完毕就是遇到
return,非静态变量将会变为空。
3形参与实参,形参是在函数的形参列表中定义,并有调用和弄输是传递给函数的实
参初始化。
实参是一个表达式,他可以是变量或者字面值苍凉,甚至包含一个或几个操作符的表
达式。在调用函数时,所传递的实参格式必须与函数的形参个数完全相同。与初始化
式的类型必须与被初始对象的类型匹配一样,实参类型也必须与其对应形参类型完全
匹配。实参必须具有与形参类型相同,或者饮食互相转换为形参类型的数据类型。
下面给个树上的例子:// gcd.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<iostream>
using namespace std;
int gcd(int v1,int v2)
{
while(v2){
int temp =v2;
v2=v1%v2;
v1=temp;
}
return v1;
}
int _tmain(int argc, _TCHAR* argv[])
{
cout <<"请输入两个数字";
int i,j;
cin>>i>>j;
cout<< "两个数字的公约输是"<<gcd(i,j)<<endl;
return 0;
}
3.函数返回类型
基本类型都可以返回。如int bool floate,还有 string,Date,void等还以返回指向
函数的指针。或者指向数组袁术的指针的指针
如int *foo(){};
练习题p199 ex7.3
// gcd.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<iostream>
using namespace std;
int gcd(int v1,int v2)
{
while(v2){
int temp =v2;
v2=v1%v2;
v1=temp;
}
return v1;
}
int Power(int radix,int index)
{
int times = index,sum = 1;
if(times==0)
return 1;
else
{
while(times--)
{
sum *= radix;
}
return sum;
}
}
int squre(int v1,int v2)
{
int sum=1;
while(v2>0){
sum*=v1;
v2--;
}
return sum;
}
int _tmain(int argc, _TCHAR* argv[])
{
cout <<"请输入两个数字";
int i,j;
cin>>i>>j;
//cout<< "两个数字的公约输是"<<squre(i,j)<<endl;
cout<< "所得结果是"<<squre(i,j)<<endl;
cout<< "所得结果是"<<Power(i,j)<<endl;
return 0;
}
ex7.4
返回一个数的绝对值:
int aa(int a){
return a>0?a:(-a);
}