c++ 函数篇
1.函数是什么样子:
dataType functionName( dataType1 param1, dataType2 param2 ... ){//do something }//形式参数param...
2.什么是形式参数,什么是实际参数?
declareFunc(num1 , num2); //实际参数 num1,num2
3.函数声明
dataType functionName( dataType1 param1, dataType2 param2 ... );//此处加分号
对于多个文件的程序,通常是将函数定义放到源文件(
.c
文件)中,将函数的声明放到头文件(.h
文件)中,使用函数时引入对应的头文件就可以,编译器会在链接阶段找到函数体。在所有函数外部定义的全局变量的作用域默认是所有的源文件。
4.函数如何传递不同类型的参数
1.基本类型 ,复制变量的值给形参的形式传递。
double avarage(double a , double b){return (a+b)/2;} int main() {
double num1 = 343.456;
double num2 = 789.126;
std::cout << "result is "<<avarage(num2,num1) << std::endl; //即在执行时赋值 a = num1;b=num2 //result is 566.291
}
2.类实例和数组,传递指针或者引用。
传递数组:
int avarageArr(int arr[], int size){//传递指针和数组大小。
int sum=0;
for(int i =0;i<size;i++){
sum+= arr[i];
};
return sum/size;
}
int main() {
int arr[3]= {1,2,3};
cout <<"result is "<<avarageArr(arr,3) << endl;
return 0;
}
传递对象:
struct Book_data{
std::string No;
}; int main() {
Book_data s1;//实例化
s1.No = "1-xd-b-3";//给s1赋值
printBookNo(s1);//传递引用 || &s1传递地址
return 0;
}
void printBookNo(Book_data &bookRef){ //绑定引用给参数,相当于&bookRef = s1 || *bookPointer指针接收地址
std::cout << bookRef.No<< std::endl;// || bookPinter->No 使用指针获取
}
5.花括号定义作用域。
double num1 = 343.456;
if(num1>0){
double num1 = 789.12;
cout<< num1 <<endl;//789.12
}
cout<< num1 <<endl;//343.456
6.#define(宏定义命令),用一个标识符来表示一个任意的字符串,如果代码中使用该标识符,那么该标识符就都替换成设置的字符串。
#define N 20 //不要加分号,加上分号会被连分号一起换出去。
int main() {
int sum = 7 + N;
printf("%d\n", sum);//27
return 0;
}
7.内置预定义宏
printf("Date : %s\n", __DATE__);//__DATE__:表示当前的编译日期;
printf("Time : %s\n", __TIME__);//__TIME__:表示当前的编译时间;
printf("File : %s\n", __FILE__);//__FILE__:表示当前源文件的名称;
printf("Line : %d\n", __LINE__);//__LINE__:表示当前源代码的行号;
c++ 函数篇的更多相关文章
- PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
PHP函数篇详解十进制.二进制.八进制和十六进制转换函数说明 作者: 字体:[增加 减小] 类型:转载 中文字符编码研究系列第一期,PHP函数篇详解十进制.二进制.八进制和十六进制互相转换函数说明 ...
- Python函数篇(5)-装饰器及实例讲解
1.装饰器的概念 装饰器本质上就是一个函数,主要是为其他的函数添加附加的功能,装饰器的原则有以下两个: 装饰器不能修改被修饰函数的源代码 装饰器不能修改被修改函数的调用方式 装饰器可以简单的理 ...
- Python函数篇(7)-正则表达式
1.正则表达式 正则表达式为高级的文本模式匹配,抽取,与/或文本形式的搜索和替换功能提供了基础,简单的来说,正则表达式是由一些字符和特殊符号组成的字符串.Python通过标准库中的re模块来支持正 ...
- Scala进阶之路-Scala函数篇详解
Scala进阶之路-Scala函数篇详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.传值调用和传名调用 /* @author :yinzhengjie Blog:http: ...
- C语言函数篇(二)函数参数基础设计
形参实现一种数据传入的接口 ,由 实参 拷贝给 形参. 拷贝!!!!!!!!!!! 例1: void func(int tmp){ //意图是实现传进来的参数 +1 tmp++; } int mian ...
- 30s源码刨析系列之函数篇
前言 由浅入深.逐个击破 30SecondsOfCode 中函数系列所有源码片段,带你领略源码之美. 本系列是对名库 30SecondsOfCode 的深入刨析. 本篇是其中的函数篇,可以在极短的时间 ...
- 《前端之路》- TypeScript(二) 函数篇
目录 一.定义函数方法 二.定义函数传参 三.可选传参 四.默认传参 五.传递剩余参数 六.函数重载 七.箭头函数 八.总结 一.定义函数方法 在 es5 中定时函数的方法有 命名函数和函数表达式(匿 ...
- JavaScript进阶之高阶函数篇
JavaScript进阶之高阶函数篇 简介:欢迎大家来到woo爷说前端:今天给你们带来的是JavaScript进阶的知识,接下来的系列都是围绕着JavaScript进阶进行阐述:首先我们第一篇讲的是高 ...
- 通过实战理解C语言精要——函数篇
前言 本篇博客是对C语言函数部分的重点内容和细枝末节通过实战得到的经验的总结精炼,不涵盖C语言函数的全部内容,所有提炼内容均来自提炼与实战,阅读需要对函数部分有一定基础,可用于对C语言函数的理解提 ...
- Python函数篇(3)-内置函数、文件处理
1.内置函数 上一篇文章中,我重点写了reduce.map.filter3个内置函数,在本篇章节中,会补充其他的一些常规内置函数,并重点写max,min函数,其他没有说明的函数,会在后面写到类和面向对 ...
随机推荐
- Epicor 助力F1车队Scuderia AlphaTauri 提升车队运营效率和性能
Scuderia AlphaTauri 很高兴地宣布,Epicor 是促进业务增长的行业特定企业软件的全球领导者,已被任命为车队的官方 ERP 合作伙伴.这项多年期协议建立在已经成功的长期技术合作关系 ...
- IIS SSL认证流程& url重写
一.SSL认证 也就是我们常说的服务器认证,为的是启动加密传输协议https,步骤如下: 1.生成证书请求 进入IIS,选择服务器的服务器证书设置选项, 创建证书申请,填值如图所示 选择加密服务提供程 ...
- 在线设计器 DesignO 的分析
需求分析 现有POD网站的在线编辑器不是很好用. 可配置性不强,素材无法在后台实现管理 可扩展性不强,无法应用于多个行业,比如包装.服装 产品分析 官方网站:https://www.designnbu ...
- 从源码MessageSource的三个实现出发实战spring·i18n国际化
1.前言 互联网业务出海,将已有的业务Copy to Global,并且开始对各个国家精细化,本土化的运营.对于开发人员来说,国际化很重要,在实际项目中所要承担的职责是按照客户指定的语言让服务端返回相 ...
- nvm安装和管理nodejs
一.NVM简介 NVM 全称 Node Version Manager,是一个管理 NodeJS 版本的工具. NVM 默认只支持 Linux 和 OS X,不支持 Windows windows使用 ...
- vue 图片分页
<div class="activities phone"> <!-- 动态 --> <div class="activity" ...
- TensorFlow的基础结构
Tensorflow 是非常重视结构的, 我们得建立好了神经网络的结构, 才能将数字放进去, 运行这个结构. 这个例子简单的阐述了 tensorflow 当中如何用代码来运行我们搭建的结构. 创建数据 ...
- vue封装组件
父组件 <template> <view> <assembly @submitToParent="submitToParent"> <te ...
- Burpsuite 资料整理
Burpsuite 资料整理, 整到一起比较方便.大家有更多关于Burpsuite的Tip请一起增量.谢谢! 插件 序号 名称 功能 参考文档 1 Turbo intruder 并发 https:// ...
- C# Thread.Join()作用
Thread.Join()在MSDN中的解释:Blocks the calling thread until a thread terminates 阻塞calling thread,直到当前join ...