首页 > 编程语言 >从零开始学习C++之函数

从零开始学习C++之函数

时间:2024-08-24 15:16:47浏览次数:8  
标签:return 函数 形参 int C++ add 从零开始 变量

前言

作者看着 200 行的主函数大模拟返回了 WA,陷入了沉思......

咋办?把每个模块包装一下就知道哪里出错了,所以,今天讲函数。

(太生硬了吧。。。)

定义一个函数

格式:

返回值类型 函数名(变量 * n)
{
	代码
}

例如:

int add(int a, int b)
{
	return a + b;
}

注:定义函数中的每个变量必须重新写类型,禁止 int add(int a, b)

函数返回值类型和变量一样,如果你不想返回东西可以写 void 类型。

但是,所有函数必须有返回值,即便是 void 类型也要在函数结束处写上 return ;

调用一个函数

我们以 a+b problem 作为演示,在此把 a+b 环节封装:

int add(int a, int b)
{
	return a + b;
}

我们想要调用这个函数只需写:add(赋值给a的数/变量, 赋值给b的数/变量)

例:在主函数中调用:

int main()
{
	int a, b;
	cin >> a >> b;
	cout << add(a, b) << "\n";
	return 0;
}

形参和实参

形参:在声明一个函数的时候,参数是没有实际值的,只是起到一个占位/定义的作用。

实参:在调用一个函数的时候,参数必须有一个确定的值,是真正能够对结果起作用的因素。

#include <bits/stdc++.h>
using namespace std;

int add(int a, int b) // 这里是形参。

.....省略亿点代码

int main()
{
	int a, b;
	cin >> a >> b;
	cout << add(a, b); // 这里调用时给的是实参。
	return 0;
}

作者的话

先不说了,调大模拟去了,555。

喜欢推荐一下吧qwq。

标签:return,函数,形参,int,C++,add,从零开始,变量
From: https://www.cnblogs.com/George222/p/18377784

相关文章

  • 从零开始学习C++
    updateon2024/8/24前言配置环境基本编码格式入门输入输出循环变量与数组if判断语句(分支结构)基础函数......
  • 埃筛C++写法
    埃筛的作用是找素数(质数),以质数的倍数一定是合数为重心思路。比如说2是质数,但2的倍数(除了自己)都是合数。3是质数,但3的倍数(除了自己)都是合数。我们针对这个特性,可以用打标法实现。p[x]表示x是否为质数。voidPrime(){ memset(P,true,sizeof(P)); for(inti......
  • C++相关知识
     string倒排reverse#include<iostream>#include<string>#include<algorithm>intmain(){std::stringstr="Hello,World!";std::reverse(str.begin(),str.end());std::cout<<str<<std::endl;r......
  • 如何使用 SQL Server 内置函数实现MD5加密
    目录前言一、MD5加密1、MD5加密的特点2、MD5加密的应用场景3、为什么MD5有用二、使用MD5三、MD5加密示例 四、SQL截取字符串substring总结最后前言在互联网时代,我们的数据基本都是在暴露在外面,数据安全变得越来越重要。我们经常需要保护一些个人信息,比如密码......
  • Python小白自用学习日记 | print和input函数(参考“Python_子木”的教程)&pandas的下载
            写论文要分析气象数据,下载后发现是txt格式,看来要学学python做数据处理。真是“书到用时方恨少”。我看的是B站“Python_子木”的教程。电脑里以前装过了VScode,就暂时不下载pycharm了。        仅作为一个超级小白的养成系学习日记吧。大佬们请不用点......
  • C++11新特性(四):库特性
    C++11新特性库特性std::move用于实现移动语义的函数,完成左值到右值的转换,参见C++11新特性(一)std::forward用于实现完美转发的函数,直接将参数的类型传递到参数中,右值不会退化为左值std::threadthread是引入的线程库,用于创建线程,并发编程。std::to_string()to_string能够完......
  • C++11新特性(三):语言特性
    C++11新特性范围for循环std::vector<int>nums;for(autoit:nums){cout<<*it<<endl;}array<5,int>a{1,2,3,4,5};for(autox:a){x*=2;//此时a中元素不会发生改变a{1,2,3,4,4}}for(auto&x:a){x*=2;//此时a中元素会发......
  • C++学习,关键字
    列表是C++中的保留字,这些保留字不能用作常量或变量或任何其它标识符名称:asmelsenewthisautoenumoperatorthrowboolexplicitprivatetruebreakexportprotectedtrycaseexternpublictypedefcatchfalseregistertypeidcharfloatreinterpret_casttypenameclassforreturnunionconstfr......
  • C++学习, 变量作用域
    从广义上看,有三个地方,可以声明变量:在函数或块中声明的变量,为局部变量。在函数参数定义的变量,为形式参数。在所有函数之外的变量,为全局变量。局部变量(LocalVariables)在函数或块内声明的变量是局部变量。它们只能由该函数或代码块中的语句使用。本地变量不为其自......
  • C++11新特性(二):语言特性
    C++11新特性语言特性nullptr空指针nullptr空指针的使用可以规避掉以往设置为NULL的风险。NULL在编译器中常常被设置为0或者其它数字,此时判断指针是否为NULL,即判断指针类型是否能够等于整型值,并不安全。int*p=nullptr;强类型枚举强类型枚举不能隐式转换为int类型,可以指定......