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

C++函数新思想和标准的输入和输出

欢迎来观看温柔了岁月.c的博客
目前
设有C++学习专栏
C语言项目专栏
数据结构与算法专栏
目前主要更新C++学习专栏,C语言项目专栏不定时更新
待C++专栏完毕,会陆续更新C++项目专栏和数据结构与算法专栏
一周主要三更,星期三,星期五,星期天
感谢大家的支持

C++函数新思想

函数重载

函数重载的定义

C++允许同名不同参的函数存在,C不允许

函数重载的规则

不同参数的三个体现
1.参数数目不同
2.参数的类型不同
3.参数顺序不同(前提是存在不同类型)

参数的类型不同

//参数类型不同
int printDate(int a, int b)
{return a > b ? a : b;}float printDate(float c, float d)
{return c > d ? c : d;
}
类型不同注意事项

C++对类型的要求比C语言要严格,

例如:float类型, 其实在编译器中默认的都是double类型

C++的要求比较严格

如果你在堆函数传参的话这样就会报错

那么如何解决这个问题呢?其实很简单,你只需要在数据后面加一个f,指定表示这是float类型的就行了

参数的数目不同

#include<iostream>using namespace std;int printDate(int a, int b)
{return a > b ? a : b;
}float printDate(float a, float b)
{return a > b ? a : b;
}int main()
{system("pause");return 0;
}

参数的顺序不同(前提存在不同 类型)

//3.参数的顺序不同
#include<iostream>using namespace std;void printDate(int a, char b)
{}void printDate(char a, int b)
{}
int main()
{system("pause");return 0;
}

函数缺省

函数缺省的定义

函数缺省就是对函数的形参赋初值,当不传参的时候使用的是默认值

函数缺省的规则

1.从右往左缺省,中间不能有空着的

#include<iostream>
#include<cstdio>using namespace std;void printDate(int a = 1, float c = 2.111f)
{printf("%d %f", a,c);
}
int main()
{printDate(2); //对第一个赋初值system("pause");return 0;
}

结果如图所示

2.多文件中,.h缺省了,.cpp就不用缺省了(声明做了缺省,实现就不用缺省了)

缺省的好处

实现函数不同形态的调用,针对不同需求做不同的实现

C++标准的输入和输出

目前大家学会用即可,后面在lo流会详细讲这些

输出

1.cout + <<(由左运算符) + 输出的内容 (跟C语言中printf()函数作用类似)

2.换行:用endl 来替代\n

#include<iostream>using namespace std;int main()
{cout << "hello world" << endl;  // << 右运算符可以多次使用cout << "hell0" << "world" << endl;system("pause");return 0;
}

输入

  1. cin >>(右运算符) + 变量(跟C语言中scanf()函数作用类似)

跟C语言中scanf()函数差不多,然后直接在键盘输入即可

#include<iostream>using namespace std;int main()
{int a;cin >> a; //跟C语言中sancf()函数差不多  输入cout << a << endl; //跟C语言中printf()函数差不多打印system("pause");return 0;
}

gitee源码讲解领取

gitee源码讲解领取

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

相关文章:

  • 华为OD机试真题Java实现【汽水瓶】真题+解题思路+代码(20222023)
  • WindownsPowershell中的单引号和双引号
  • 【华为OD机试模拟题】用 C++ 实现 - 数组组成的最小数字(2023.Q1)
  • Ae:使用代理
  • OAuth 2.0 认证和攻击面
  • 论文写作模板
  • (五)物质导数与空间时间导数
  • python实战应用讲解-【语法基础篇】流程控制-运算符(附示例代码)
  • MXNet中使用双向循环神经网络BiRNN对文本进行情感分类
  • SpringBoot 整合 MongoDB 6 以上版本副本集及配置 SSL / TLS 协议
  • C语言static关键字
  • 【华为OD机试模拟题】用 C++ 实现 - 单词接龙(2023.Q1)
  • PHP基础(2)
  • Java8(JDK1.8)新特性
  • 【C语言】指针的定义和使用
  • Parameter ‘zpspid‘ not found
  • 23、高自由度下的E类波形理论计算(附Matlab代码)
  • 软件测试:用“bug”来表示“在电脑程序里的错误”
  • Git命令
  • Java的异常概念和类型
  • 【Leedcode】环形链表必备的面试题和证明题(附图解)
  • Vulnhub靶场----7、DC-7
  • 【Unity VR开发】结合VRTK4.0:创建滑块
  • Latex中的表格(2)
  • (七)输运定理
  • ABBYYFineReader15免费电脑pdf文档文字识别软件
  • 顺序表(超详解哦)
  • Compose-Animation高级别动画
  • c++11 标准模板(STL)(std::unordered_set)(八)
  • Python每日一练(20230225)