当前位置: 首页 > news >正文

c++函数以及函数分文件编写

1.函数

1.1格式

返回值类型 函数名 (参数列表)//返回值类型指的是return过去的类型
{
函数体语句
return 表达式
}

1.2常见的函数样式

1.无参返回
2.有参返回
3.无参有返
4.有参有返

#include<iostream>
using namespace std;
int add(int num1,int num2){ //此时的num1和num2没有真实数据,简称形参int sum = num1 + num2;return sum;}
//函数声明 函数开头粘贴过来加分号
void swap(int num1, int num2);int main()
{//函数调用: 函数名 (参数)//我们管a,b叫做实参int a = 10;int b = 20;int sum = add(a, b);cout << "sum = " << sum << endl;swap(a, b);system("pause");return 0;
}//形参改变不会影响实参//除了在函数中使用指针进行地址传递的操作时,可能会改变void swap(int num1, int num2){cout << "交换前:" << endl;cout << "num1=" << num1 << endl;cout << "num2=" << num2 << endl;int temp = num1;num1 = num2;num2 = temp;cout << "交换后:" << endl;cout << "num1=" << num1 << endl;cout << "num2=" << num2 << endl;}

2.函数分文件编写

2.1分文件编写

1.创建后缀名为.h的头文件,写函数的声明
2.创建后缀名为.cpp的源文件,写函数的定义

swap.h

#include <iostream>
using namespace std;//得加上框架不然cout会报错
//函数声明
void swap2(int num1, int num2);

swap.cpp

#include "swap.h"//""代表自定义的一个文件void swap2(int num1, int num2)
{cout << "交换前:" << endl;cout << "num1=" << num1 << endl;cout << "num2=" << num2 << endl;int temp = num1;num1 = num2;num2 = temp;cout << "交换后:" << endl;cout << "num1=" << num1 << endl;cout << "num2=" << num2 << endl;
}

main.cpp

//void swap2(int num1, int num2);
#include<iostream>
using namespace std;
#include "swap.h"
int main()
{int a = 20;int b = 10;swap2(a,b);system("pause");return 0;
}
//void swap2(int num1, int num2)
//{
//	cout << "交换前:" << endl;
//	cout << "num1=" << num1 << endl;
//	cout << "num2=" << num2 << endl;
//	int temp = num1;
//	num1 = num2;
//	num2 = temp;
//	cout << "交换后:" << endl;
//	cout << "num1=" << num1 << endl;
//	cout << "num2=" << num2 << endl;
//}

http://www.lryc.cn/news/407665.html

相关文章:

  • 【JVM基础06】——组成-直接内存详解
  • 学术研讨 | 区块链与隐私计算领域专用硬件研讨会顺利召开
  • AngularJS API 深入解析
  • 过某开源滑动验证码
  • 一文解决 | Linux(Ubuntn)系统安装 | 硬盘挂载 | 用户创建 | 生信分析配置
  • Matlab M_map工具箱绘制Interrupted Mollweide Projection
  • Python 变量与基本数据类型
  • Pytorch深度学习实践(5)逻辑回归
  • 认识漏洞-GitLab 远程命令执行漏洞、致远OA-ajax.do未授权任意文件上传漏洞
  • vue实现电子签名、图片合成、及预览功能
  • 【flink】之如何消费kafka数据?
  • 科研绘图系列:R语言山脊图(Ridgeline Chart)
  • Boost搜索引擎:如何建立 用户搜索内容 与 网页文件内容 之间的关系
  • 【QT】QT 窗口(菜单栏、工具栏、状态栏、浮动窗口、对话框)
  • Golang | Leetcode Golang题解之第283题移动零
  • ubuntu22.04 安装 NVIDIA 驱动以及CUDA
  • 数据结构·AVL树
  • 记一次Mycat分库分表实践
  • 数据分析:微生物数据的荟萃分析框架
  • Django—admin后台管理
  • 数字图像处理中的常用特殊矩阵及MATLAB应用
  • vue侦听器(Watch)精彩案例剖析一
  • HTTP 协议浅析
  • VsCode | 让空文件夹始终展开不折叠
  • Centos7_Minimal安装Cannot find a valid baseurl for repo: base/7/x86_6
  • Spark_Oracle_II_Spark高效处理Oracle时间数据:通过JDBC桥接大数据与数据库的分析之旅
  • 力扣 459重复的子字符串
  • MyBatis XML配置文件
  • 读写RDS或RData等不同格式的文件,包括CSV和TXT、Excel的常见文件格式,和SPSS、SAS、Stata、Minitab等统计软件的数据文件
  • Android 支持的媒体格式,(二)视频支持格式