当前位置: 代码迷 >> 综合 >> C++学习-函数-7
  详细解决方案

C++学习-函数-7

热度:82   发布时间:2024-02-10 07:43:37.0

目录

函数的定义和调用

值传递(void)

函数的常见样式

函数的声明

函数的分文件编写!!!

头文件add.h

源文件add.cpp

外部程序调用add函数    


 

函数的定义和调用

#include <iostream>
using namespace std;//函数的定义和使用
//返回值 函数名 (参数列表) {函数体语句 return语句}
int add(int num1,int num2)
{int sum = num1 + num2;// return num1 + num2;return sum;
}int main(){// cout << add(1,2) << endl;int a = 1;int b = 2;int c = 0;c = add(a,b);cout << c << endl;return 0;
} 输出:
3

值传递(void)

在做值传递的时候,函数的形参发生改变,并不影响实参对的改变

#include <iostream>
using namespace std;void swap(int num1,int num2)
{cout << "在swap中,a的值原来是:" << num1 << endl;cout << "在swap中,b的值原来是:" << num2 << endl;int temp = num1;num1 = num2;num2 = temp;cout << "在swap中,a的值交换后是:" << num1 << endl;cout << "在swap中,b的值交换后是:" << num2 << endl;
}int main(){int a = 1;int b = 2;//在做值传递的时候,函数的形参发生改变,并不影响实参对的改变cout << "a的值原来是:" << a << endl;cout << "b的值原来是:" << b << endl;swap(a,b);cout << "a的值交换后是:" << a << endl;cout << "b的值交换后是:" << b << endl;return 0; 
} 输出:
a的值原来是:1
b的值原来是:2
在swap中,a的值原来是:1
在swap中,b的值原来是:2
在swap中,a的值交换后是:2
在swap中,b的值交换后是:1
a的值交换后是:1
b的值交换后是:2

函数的常见样式

  • 无参无返
  • 有参无返
  • 无参有返
  • 有参有返
#include <iostream>
using namespace std;//无参无返
void test1()
{cout << "无参无返" << endl;
}
//有参无返
void test2(int a)
{cout << "有参无返,参数的值是:" << a << endl; 
}
//无参有返
int num()
{return 100;
}
//有参有返
string add(string a , string b)
{return a + b;
}int main()
{int num0;string str;test1();test2(20);num0 = num();  //接受返回值的变量不能和函数名相同cout << "num0 =" << num0 << endl;str = add("我是","谁");cout << str << endl;return 0; 
} 输出:
无参无返
有参无返,参数的值是:20
num0 =100
我是谁

函数的声明

声明(告诉编译器的存在)可以写多次,但是定义(告诉函数是什么,不能多次定义)只能有一次

#include <iostream>
using namespace std;//函数的声明,函数就可以放在main函数的后面
string add(string a , string b);int main()
{string str;str = add("我是","谁");return 0; 
} string add(string a , string b)
{return a + b;
}

函数的分文件编写!!!

作用:让代码结构看的更加清晰

函数文件编写一般分为四个步骤:

  • 创建后缀名为 .h 的头文件
  • 创建后缀名为 .cpp 的源文件
  • 在头文件中写函数的声明
  • 在源文件中写函数的定义

头文件add.h

#include <iostream>
using namespace std;
// 对函数的声明(引用函数)
int add(int num1, int num2);

源文件add.cpp

#include "add.h"
//引入头文件int add(int num1,int num2)
{int sum = num1 + num2;return sum;
}

外部程序调用add函数    

#include <iostream>
#include "add.h"
// 引入头文件
using namespace std;int main()
{int a = 1;int b = 2;int c = 0;c = add(a,b);// 调用add函数cout << c << endl;return 0;
} 

总结一下:

就是将头文件作为纽带,使源文件(分离在外边的函数)和头文件取得关联,然后外部程序只用调用头文件,即可调用源文件里面的函数了!

 

 

 

 

 

  相关解决方案