10、C++函数
1、定义函数和函数调用:
1.1、定义函数:
可以将函数分为两类,没有返回值的函数,和有返回值得函数,没有返回值得函数被称为void函数,其通用格式如下:
void funtionname (parameterlist)
{
statement(s);
return;//可选的 }
其中parameterlist指定了传递给函数的类型和数量,
又返回值得函数的通用格式为:
typeName funtionname(parameterList)
{
statements;
return value;//返回值得数据类型与 typeName的类型一样
}
1.2、函数调用
调用函数必须在调用它的程序之前,对函数有一个定义,并且要提供函数的原型。调用函数时,要按照,函数的参数顺序,与参数的类型,对函数进行传参。
1.3、数参数和按值传递
在函数中声明的变量(包括参数)是该函数私有的,在函数被调用时,计算机将为这些变量分配内存,在函数结束时,计算机将会释放这些变量的内存(有些C++文献将分配内存称为创建和毁坏变量)这样的变量称为局部变量,因为他们被限制在函数中,,这样有助于确保数据的完整性
2、函数与数组:
int sum_arr(int arr[],int n)//arr = 数组名,n=size
arr是一个指针,但在编写函数的其余部分的时候,可以将arr看作是数组
#include <iostream>
const int ArSize = ;
int sum_arr(int arr[],int n);//声明函数
int main()
{
using namespace std;
int cookies[ArSize] = {,,,,,,,};
int sum = sum_arr(cookies,ArSize);
cout<<"Total cookies eaten:"<<sum<<"\n";
return ; } int sum_arr(int arr[],int n)
{
int total = ;
for (int i=;i<n;i++)
total = total +arr[i];
return total;
}
程序输出为:
Total cookies eaten:255
将数组地址作为参数可以节省赋值整个数组所需要的时间和内存,如果数组很大,则使用拷贝的系统开销将非常大,程序不仅需要更多的计算机内存,还需要花费时间来赋值大块的数据。
使用函数区间的函数(类似于Python中的切片)
将C风格字符串作为参数传给函数;
(1).char数组
(2)用引号括起来的字符串常量
(3)被设置为字符串的地址的char指针
10、C++函数的更多相关文章
- Linux pwn入门教程(10)——针对函数重定位流程的几种攻击
作者:Tangerine@SAINTSEC 本系列的最后一篇 感谢各位看客的支持 感谢原作者的付出一直以来都有读者向笔者咨询教程系列问题,奈何该系列并非笔者所写[笔者仅为代发]且笔者功底薄弱,故无法解 ...
- 巨蟒python全栈开发-第10天 函数进阶
一.今日主要内容总览(重点) 1.动态传参(重点) *,** *: 形参:聚合 位置参数*=>元组 关键字**=>字典 实参:打散 列表,字符串,元组=>* 字典=>** 形参 ...
- 2021.08.10 Euler函数总结
2021.08.10 Euler函数总结 知识: 记 φ(n) 表示在 [1,n] 中与 n互质的数的个数. 1.p为质数,则 \[φ(p^l)=p^l-p=p^{l-1}(p-1) \] 注:每p个 ...
- int (*(*fp)(void *))[10]; 指向函数的指针类型
<pre lang="c" escaped="true">int (*(*fp)(void *))[10]; //这个类型用typedef分解出来 ...
- Python核心编程读笔 10:函数和函数式编程
第11章 函数和函数式编程 一 调用函数 1 关键字参数 def foo(x): foo_suite # presumably does some processing with 'x' 标准调用 ...
- 关于oracle数据库(10)函数
分析函数,用于统计排名 语法:函数名() over(order by 排序字段 asc | desc) row_number() 无论值是否相等,生成连续的行号 -- 1,2,3,4, select ...
- 【转】JDBC学习笔记(10)——调用函数&存储过程
转自:http://www.cnblogs.com/ysw-go/ 如何使用JDBC调用存储在数据库中的函数或存储过程: * 1.通过COnnection对象的prepareCall()方法创建一个C ...
- day 10 - 2 函数练习
1.写函数 接收 n 个数字 求这些参数数字的和 def sum_func(*args): total = 0 for i in args: total += i return total prin ...
- python基础(10)-匿名函数&内置函数
匿名函数 例子 返回两个数的和 def add(x, y): return x + y # 等价于 add = lambda x, y: x + y 返回字典中值最大的key dic = {'a': ...
- 【APUE | 10】函数signal
函数signal 函数signal介绍 typedef void (*sighandler_t)(int); sighandler_t signal(int signum, sighandler_t ...
随机推荐
- ELK(Elasticsearch/Logstash/Kibana)安装时常见错误总结
问题一: [2016-11-06T16:27:21,712][WARN ][o.e.b.JNANatives ] unable to install syscall filter: Java.lang ...
- sftp put权限不够
报错如下: sftp> put play.zip ./ Uploading play.zip to /opt/library/./play.zip remote open("/opt/ ...
- C# XML 操作
1 xml文件格式 <?xml version="1.0" encoding="utf-8"?> <userInfo> <user ...
- linux的基本指令--第三节
查找与检索: 一.文件名查找:find . -name "test*" find 路径 查找类型 名字 未输入路径则默认当前路径 二 . 内容检索:grep &q ...
- ParallaxEffect
[ParallaxEffect] ParallaxEffect是一种用简单的2D贴图来模拟3D效果的简易方法.譬如一棵树,摄像机俯视时,当树远离摄像机时,树顶偏远,当树靠近,树顶偏近.苹果官方Adve ...
- 常用Xcode文档位置,修改Xcode项目模板地址总结,以及常用地址,随时更新。
Xcode文档 ~/Library/Developer/Shared/Documentation/DocSets or /Applications/Xcode.app/Contents/Develop ...
- javascript使用技巧总结,不断更新...
1.使用a标签来获得当前页面相对地址的绝对地址 function getAbsoluteUrl(url){ var a; if(!a) a = document.createElement('a'); ...
- spring aop自动代理xml配置
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- 在Ubuntu安装Tomcat7.0及开机自动运行
在Ubuntu安装Tomcat7.0及开机自动运行 1.安装装Tomcat7.0 一般都是绿色版的,下载一个tomcat7.0解开到指定的目录上即可 然后进入tomcat目录的bin文件夹,执行 su ...
- Linux xclip命令
一.简介 xclip命令建立了终端和剪切板之间通道,可以用于以命令的方式将终端输出或文件的内容保存到剪切板中,也可以用于将剪切板的内容输出到终端或文件中. 在 X 系统里面,从一个窗口复制一段文字到另 ...