开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第36天,点击查看活动详情
✨欢迎关注🖱点赞🎀收藏⭐留言✒
🔮本文由京与旧铺原创,csdn首发!
😘系列专栏:C++学习
💻首发时间:🎞2022年12月31日🎠
🀄如果觉得博主的文章还不错的话,请三连支持一下博主哦
🎧作者是一个新人,在很多方面还做的不好,欢迎大佬指正,一起学习哦,冲冲冲
C++的输入与输出
我们学习一门编程语言,hello world是必不可少的,下面我们来介绍使用C++实现hello world。
C语言中需要include <stdio.h>,C++中需要include <iostream>,根据名字,其实就是io流的意思,我们可以使用cout实现输出,cin实现输入,输出需要流向cout用的是<<,输入的数据需要流到变量,所以使用>>。
我们使用C++中的命名库函数,需要访问std命名空间,为了方便我还是直接全部展开吧,下面这个程序就能输出hello world!。
#include <iostream>
using namespace std;
int main()
{
cout << "hello world!";
return 0;
}
输入数据我们可以使用
cin,用法如下:
#include <iostream>
using namespace std;
int main()
{
int a, b;
cin >> a >> b;
cout << a << " " << b;
return 0;
}
缺省参数
所谓的缺省参数就是在函数的形参列表中给定形参默认值,则传入实参时可以不传入该参数,不传时该参数为默认值,传入时为指定的实参值。
你可以将函数形参列表的所有参数都设置为缺省参数,这种形参列表称为全缺省参数,当然对应的,你也可以只设置一部分形参为缺省参数,像这种形参列表就叫做半缺省参数,这个半缺省参数也是有规则的,对缺省参数的位置设置有讲究,有关缺省参数的规则如下:
- 半缺省参数必须从右往左依次来给出,不能间隔着给。
- 缺省参数不能在函数声明和定义中同时出现。
全缺省参数:
//全缺省参数
void f1(int a = 10, int b = 20, int c = 30)
{
cout << a << " " << b << " " << c << endl;
}
我们可给定任意个数的参数,函数都可以执行:
int main()
{
f1();
f1(1);
f1(1, 2);
f1(1, 2, 3);
return 0;
}
结果:
半缺省参数:
注意默认值需要从右到左连续设置,不可间断。
//半缺省参数
void f2(int a, int b = 20, int c = 30)
{
cout << a << " " << b << " " << c << endl;
}
测试:
int main()
{
f2(1);
f2(1, 2);
f2(1, 2, 3);
return 0;
}
结果:
缺省参数也是挺有用的,比如顺序表中,初始化时,如果没有给容量,可以以设置的默认参数值作为容量。
函数重载
C++允许在同一作用域中声明几个功能类似的同名函数,这些同名函数的形参列表(参数个数 或 类型 或 顺序)必须不同,常用来处理实现功能类似数据类型不同的问题,如加法函数,如果没有函数重载需要对每个数据类型都准备一个函数,非常不方便。
函数重载的规则为:
- 函数名相同。
- 形参列表不同,包括参数个数,参数类型,参数顺序。
- 返回值不做要求。
不使用重载写加法函数:
int add1(int a, int b)
{
return a + b;
}
double add2(double a, double b)
{
return a + b;
}
//more...
不同类型函数名不同,调用非常麻烦,太多可能都不知道调用哪一个。
使用重载函数写加法函数:
int add(int a, int b)
{
return a + b;
}
double add(double a, double b)
{
return a + b;
}
//more
不论哪一种数据类型,统一调用add方法就行。