[C++学习历程]基础部分 C++中的函数学习

本文地址:http://blog.csdn.net/sushengmiyan/article/details/20305815

作者:sushengmiyan

一。静态变量:

局部变量是线程到达定义的地方的时候进行初始化,如果定义在函数中,那么每次函数调用的时候,都会进行初始化,函数的每个调用保留着一个副本,对于静态变量来说,只在第一次调用的时候初始化。通过下面一个例子可以细细体会这个区别:

// sushengmiyanTest.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include <iostream>
using namespace std;void f(int a)
{while(a--){static int n = 0;int x = 0;cout<<"n=="<<n++<<" ,x=="<<x++<<"\n";}
}int _tmain(int argc, _TCHAR* argv[])
{//cout<<"hello world \n";f(3);system("pause");return 0;
}

通过运行结果可以看出,n是静态变量,虽然每次调用函数了,但是只是一次初始化,后面执行n++之后,值就是n++的值,再次调用也不会初始化,对于x来说是局部变量,每次调用都会初始化一下,所以每次都是0.


二。参数传递

// sushengmiyanTest.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include <iostream>
using namespace std;void f(int a)
{while(a--){static int n = 0;int x = 0;cout<<"n=="<<n++<<" ,x=="<<x++<<"\n";}
}void fuc(int m, int& n)
{m++;n++;
}int _tmain(int argc, _TCHAR* argv[])
{int a = 3;int b = 3;//cout<<"hello world \n";fuc(a, b);cout<<"a=="<<a<<" ,b=="<<b<<"\n";system("pause");return 0;
}

先看这个例子,结果如下:

通过这例子可以看出,经过函数调用,初始化的时候同样是3 ,第一个参数是形式参数,传入之后对其进行操作,只在函数内部发生作用,函数外部,值不会发生变化,对于第二个参数,是传地址的,就是我修改了之后呢,内存中这个值也就发生了变化,再获取的时候就是函数内部操作之后的数值了。

所以输出的是a = 3,b=4.




转载于:https://www.cnblogs.com/muyuge/p/6152529.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/399681.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

js 表单自动提交

var form document.getElementById(formid);form.submit();

linux下安装Mysql(干货!!!)解决mysql 1130问题,远程登录问题

转载自&#xff1a;http://www.cnblogs.com/xxoome/p/5864912.html linux版本&#xff1a;CentOS7 64位 1、下载安装包“mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz” # 安装依赖 yum -y install perl perl-devel autoconf libaio 2、把下载的安装包移动到/usr/local/下。…

linux命令:ftp

1. 登录&#xff1a; ftp IP_ADDR &#xff1b; 根据提示输入USER_NAME PASS_WORD 或&#xff1a; ftp -i -n IP_ADDR user USER_NAME PASS_WORD ftp -i -n 172.17.17.17 user PUB 123456 2. 下载文件 下载文件通常用get和mget这两条命令。 a) get 格式&a…

flex 有关数据类型强制转

flex 编辑页面里变量的强制类型转化时&#xff0c;竟然不能用 as 比如&#xff1a;在mxml里&#xff0c; private var aa:String"89"; private var bb:Number(Number)aa; 正确 private var aa:String"89"; private var bb:intaa as int ; 不正确 估计这两种…

Openstack Neutron : 安全

目录 - iptable&#xff1a;起源 - tables - chains - rules - 方向 - Security group 安全组&#xff1a; - Firewall 防火墙&#xff1a; - 更高的安全 - 无处安放的安全 - 公共安全 当业务从传统环境迁移到云上之后&a…

SQL语句汇总(三)——聚合函数、分组、子查询及组合查询

https://www.cnblogs.com/ghost-xyx/p/3811036.html SQL语句汇总&#xff08;三&#xff09;——聚合函数、分组、子查询及组合查询 拖了一个星期&#xff0c;终于开始写第三篇了。走起&#xff01; 聚合函数&#xff1a; SQL中提供的聚合函数可以用来统计、求和、求最值等等…

iOS应用国际化教程(2014版)

本文转载至 http://www.cocoachina.com/industry/20140526/8554.html 这篇教程将通过一款名为iLikeIt的应用带你了解最基础的国际化概念&#xff0c;并为你的应用添加国际化的支持。该示例应用有一个标签和一个You Like&#xff1f;按钮&#xff0c;用户无论何时点击You Like?…

公众平台商户接入(微信支付)功能申请教程

场景及类型介绍 商家可以申请公众账号支付和APP&#xff08;应用客户端&#xff09;支付两种接入微信支付方式。 公众账号支付&#xff1a;用户在微信公众帐号内使用微信支付消费&#xff0c;案例&#xff1a;易迅、QQ充值。 APP&#xff08;应用客户端&#xff09;支付&#x…

datatables 自定义按钮及响应点击事件

按钮 {"targets": -1,"class": "but_xq","data": null,"bSortable": false,"defaultContent": "<p><a id\"edit\" href "#\">修改</a > <a id\"del\" …

wxPython python3.x下载地址

2019独角兽企业重金招聘Python工程师标准>>> wxPython python3.x下载地址 http://wxpython.org/Phoenix/snapshot-builds/ 转载于:https://my.oschina.net/laugh2last/blog/504688

hadoop2.2.0 core-site.xml--security properties

<!--- security properties --> <property><name>hadoop.security.authorization</name><value>false</value><description>Is service-level authorization enabled?</description> </property> 注释&#xff1a; <…

【Python】python文件名和文件路径操作

Readme&#xff1a; 在日常工作中&#xff0c;我们常常涉及到有关文件名和文件路径的操作&#xff0c;在python里的os标准模块为我们提供了文件操作的各类函数&#xff0c;本文将分别介绍“获得当前路径”“获得当前路径下的所有文件和文件夹&#xff0c;”删除文件“&#xff…

WordPress 多媒体库添加分类和标签支持

https://www.xhsay.com/wordpress-attachment-taxonomies.html 时不时看到有朋友说 WordPress 这么强大的系统&#xff0c;怎么多媒体附件都不支持分类呢。好吧&#xff0c;目前默认的确是不支持的。今天推荐一款新的插件 Attachment Taxonomies&#xff0c;它可以为多媒体添加…

爬山算法和模拟退火算法简介(转)

源&#xff1a;爬山算法和模拟退火算法简介 一. 爬山算法 ( Hill Climbing ) 介绍模拟退火前&#xff0c;先介绍爬山算法。爬山算法是一种简单的贪心搜索算法&#xff0c;该算法每次从当前解的临近解空间中选择一个最优解作为当前解&#xff0c;直到达到一个局部最优解。 爬山算…

How to connect oracle databse

1. 下載客戶端Oracle Developer Tools for Visual Studio_32bit 安裝后通過配置tnsnames.ora指定連接 C:\app\user name\product\11.2.0\client_1\Network\Admin\SERVER(DESCRIPTION(ADDRESS(PROTOCOLTCP)(HOSTIP Address)(PORT1521))(CONNECT_DATA(SIDSID))) 重啓后可以在VS20…

window使用技巧记录

1.window选择指定区域的方法&#xff1a; 点击一个地方 ——> 按住shift键不放&#xff0c;点击另一个地方 ——> 这时候就会选择了这两个点作为矩形左上角和右下角的矩形区域 2. 当前目录下打开cmd窗口 按住shift键&#xff0c;右键&#xff0c;即可出现打开cmd的选项。…

wordpress列表页调用浏览器,wordpress显示文章浏览量!

1、把下面这段代码加在想显示文章浏览次数的位置&#xff08;例如模板内的content.php&#xff09; <?php setPostViews(get_the_ID()); echo getPostViews(get_the_ID()); ?> 2、如果需要在列表页显示查看次数&#xff0c;那么建议在列表页需要显示查看次数的位置单独…

一个例子看懂神马是闭包

闭包就是这个玩意儿。怎么用在此不做多讲。就告诉大家闭包长神马样子。 <!DOCTYPE html> <html> <head><title>神马JS闭包</title><meta http-equiv"Content-Type" content"text/html; charsetutf-8"><script>f…

关于找工作

1. 明确是什么公司&#xff1f; 2. 明确自己的工作职责&#xff1f; 3. 明确工作职责要求&#xff1f; 明确自己的职业规划 努力发展方向&#xff1a; 管理方向 English 外企转载于:https://www.cnblogs.com/dianyitongxiao/p/3586125.html

wordpress实现搜索页关键词高亮

http://www.hehaibao.com/wordpress-search-word-highlight/ 今天给网站搜索页加了关键词高亮功能&#xff0c;分享出来&#xff0c;希望对小伙伴们有所帮助。 实现效果如下图&#xff1a; 那么我们直接先上主要代码&#xff1a; 1 2 3 4 5 6 7 8 9 10 11<?php$s trim(ge…