demo1:一个简单的函数
#include <iostream>
void show()
{
std::cout<<"hello world\n";
}
int main()
{
std::cout<<"main函数开始\n";
show();
std::cout<<"main函数结束\n";
return 0;
}
//main函数与普通函数的区别:一般情况下,普通函数需要被激活或者被调用才能起作用,而main函数可由操作系统直接调用。
demo2:函数参数的传递
#include <iostream>
using namespace std;
int add(int x,int y)
{
return x+y;
}
int main()
{
int a,b,c;
cout<<"请输入两个整数:";
cin>>a;
cin>>b;
c=add(a,b);
cout<<"a+b="<<c<<endl;
return 0;
}
demo3:函数的返回值、参数与变量
#include <iostream>
using namespace std;
int add(int x,int y)
{
return x+y;
}
int main()
{
int i=3,j=4;
int result=add(i,j);
cout<<"i+j="<< result <<endl;
return 0;
}
demo4 : 函数的声明和定义 (解决相互调用的问题,函数需要先声明后使用)
/*
//演示函数的声明和定义的例程如下:
#include <iostream>
using namespace std;
int add(int x,int y); //函数声明
int main()
{
int i=3,j=4;
cout<<add(i,j);
return 0;
}
int add(int x,int y) //函数定义
{
return x+y;
}
*/
/*
//直接定义一个函数
#include <iostream>
using namespace std;
int add(int x,int y)
{
return x+y;
}
int main()
{
int i=3,j=4;
cout<<add(i,j);
return 0;
}
*/
/*
//不声明函数引发的错误
#include <iostream>
using namespace std;
void A()
{
cout<<"函数A\n";
B(); //调用B函数
}
void B()
{
cout<<"函数B\n";
A(); //调用A函数
}
int main()
{
A();
B();
return 0;
}
*/
//解决不声明函数引发的错误,由于A函数中调用了B函数,而B函数又调用了A函数,因此,该程序运行后可能会导致产生一个无穷循环
#include <iostream>
using namespace std;
void A();
void B();
int main()
{
A();
B();
return 0;
}
void A()
{
cout<<"函数A\n";
B();
}
void B()
{
cout<<"函数B\n";
A();
}
demo5 :局部变量
#include <iostream>
using namespace std;
void swap(int,int);
int main()
{
int x=3,y=4;
cout<<"在main函数中,调用swap函数之前,x的值为"
<<x<<",y的值为"<<y<<endl;
swap(x,y);
cout<<"在main函数中,调用swap函数之后,x的值为"
<<x<<",y的值为"<<y<<endl;
return 0;
}
void swap(int x,int y)
{
cout<<"在swap函数中,调用swap函数之前,x的值为"
<<x<<",y的值为"<<y<<endl;
int z;
z=x;
x=y;
y=z;
cout<<"在swap函数中,调用swap函数之后,x的值为"
<<x<<",y的值为"<<y<<endl;
}
demo6 :全局变量:在任一函数外部定义的变量成为全局变量,这种变量对程序中的任何函数均有效,包括mian函数
/*
//全局变量
#include <iostream>
using namespace std;
void func();
int x=3,y=4;
int main()
{
cout<<"main函数中\n";
cout<<"x:"<<x<<" y:"<<y;
cout<<endl;
func();
return 0;
}
void func()
{
cout<<"func函数中\n";
cout<<"x:"<<x<<" y:"<<y;
}
*/
//屏蔽全局变量的局部变量
#include <iostream>
using namespace std;
void func();
int x=3,y=4;
int main()
{
int x=5,y=6;
cout<<"x:"<<x<<" y:"<<y;
return 0;
}