一 形参与实参 1).定义 形参:形式参数. 就是定义函数的时候,写在函数名小括号后面的参数叫形参 实参:实际参数. 就是调用函数的时候,调用函数时写在函数名小括号后面的参数就叫实参 2).注意项 a.实参既可以放常量,也可以放变量,还可以放表达式;形参:它其实可以理解为就是这个函数的局部变量 b.实参给形参传值,其实只是相当于给函数的形参(局部变量)赋值 c.值传递:在函数内改变了形参的值,不会影响到外面的实参 d.在C语言中,除了数组以外,所有的类型作为实参传递都是值传递 二 有参函数 带参…
形参与实参今天我们来说下c语言形参与实参的区别,形参跟实参理解的话也很简单,但是好多同学关于这个知识点都是一知半解,没有真正的去透彻,一问都知道,但在真正引用的时候还会出现很多问题,而百度的时候又会说看不懂,所以我们今天来做一个比较全面的介绍 我们今天讲解以简单明了易看懂为基础 1.形参和实参是什么 简单来说,形式参数(形参)就是形式上的参数,没有确定值,而实际参数(实参)是实际存在的,已经确定的参数,常量,变量,表达式,都是实参, 最简单的例子 ; 这里的A有了实际的值 为实参 int cha…
如果把函数比喻成一台机器,那么参数就是原材料,返回值就是最终产品:从一定程度上讲,函数的作用就是根据不同的参数产生不同的返回值.这一节我们先来讲解C语言函数的参数,下一节再讲解C语言函数的返回值.C语言函数的参数会出现在两个地方,分别是函数定义处和函数调用处,这两个地方的参数是有区别的. 形参(形式参数) 在函数定义中出现的参数可以看做是一个占位符,它没有数据,只能等到函数被调用时接收传递进来的数据,所以称为形式参数,简称形参. 这里按自己的理解为什么说形参看作一个占位符,后文还说到在调用之前并…
对于带参数的函数,我们需要在函数定义中指明参数的个数和每个参数的类型,定义参数就像定义变量一样,需要为每个参数指明类型,并起一个符合标识符命名规则的名字.例如: #include <stdio.h> void print_time(inthour,intminute,intsecond) { printf("%d:%d:%d\n", hour,minute,second); } int main(void) { print_time(12,10, 31); system(&…
函数原型: 原型prototype是函数的声明:描述了函数的返回值与参数: 函数原型说明了两点: 1.该函数的返回值 2.该函数的参数及其类型 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 函数的参数: 参数到底是什么:传递给函数的信息称为参数. 如果一个函数不接受任何参数的话,函数头的圆括号中应该写关键字void. 如果函数接受一个int类型的变量,则可以如下声明一个函数原型: void func (int n) 函数返回值类…
//函数fun功能:将a和b所指的两个字符串分别转化成面值相同的整数,并进行相加作为函数值返回,规定只含有9个以下数字字符. //重难点:字符数字转化为整型数字. #include <stdio.h> #include <string.h> #include <ctype.h> #define N 9 long ctod( char *s ) { ; while(*s)//指针指向字符串首地址. if(isdigit( *s)) {//此函数检查参数是否为字符整数类型.…
//函数fun的功能为:计算x所指数组中N个数的平均值(规定所有数都为正数),平均值通过形参返回给主函数,将小于平均值且最接近平均值的数作为函数值返回,并输出. //重难点:形参与实参之间,是否进行了值传递. #include <stdlib.h> #include <stdio.h> #define N 10 double fun(double x[],double *av) { int i,j; double d,s; s=; ; i<N; i++) s = s +x[i…
#include<stdio.h> //实参:函数原型中声明函数后面带的参数 int test(int x)//函数原型 { //函数体 printf("test里面的x地址=%p",&x); return x; } //变量的要素:变量名.变量类型.值.地址 int main() { int x=7,y=0; //实参:调用函数的时候调用的参数,x printf("main函数里x的地址=%p",&x); putchar('\n');…
1)形参 形参顾名思义就是形式上的参数,不是实际的参数,它代替实际传入方法的值.在方法体代码中代表了值本身参与运算.形参定义于参数中,它不同于方法体内局部变量,因为是一个变量,在它的作用域内不允许存在一个同名的局部变量,不管他们的类型是否相同,都是不允许出现同名的. 看下面的代码示例: //这其中的strName就是一个形参也是一个变量,不允许出现同名的局部变量 public void SayHelloTo(string strName) { Console.WriteLine("我的名字是{0…
我们都知道JS里面参数的传递是可以不一样的,比如我们有一个函数: <script type="text/javascript"> function one(a,b,c) { this.x = a; console.log(a); } one(1); </script> 我们传递的数字只有一个1,但是形参那里有abc三个.这分明对不上啊不是吗? 这个时候如果我们查看b,c的话会显示undefined.ps:比如console.log(b). 当然啦,本来就没有这两…
昨天讲了函数的定义和简单分类 1:什么是函数:具体特定功能的代码快 --特定功能代码作为一个整体,并给该整体命名,就是函数. 函数的优点: 1:减少代码的冗余 2:结构清晰,可读性强 3:具有复用性,开发效率高 用def 来声明定义一个函数: '''def fn(参数列表): 函数体 return 函数的返回值''' 定义函数时,函数体不会被执行   函数必须先定义后使用 函数的四部分 函数名,存放着函数的地址,是调用函数的依据 函数体,解决问题的代码块 参数列表 外界为内部提供数据的途径 - …
转载声明:本文转载自公众号「码匠笔记」. 前几天在头条上看到一道经典面试题,引发了一些思考.也是写这篇文章的导火索. 背景 请看题: public    classMain{    publicstaticvoid main(String[] args){        Integer a =1;        Integer b =2;        System.out.println("a="+ a +",b="+ b);        swap(a, b);…
这几天搞逻辑比较晕,居然把指针的概念都混淆了. eg:int *p;//当然不对指针初始化在有些编译器是通不过编译的,比如VS(尤其是选中了SDL) 指针p是一个对象,定义开始没有分配了内存空间,只是定义了一个指针而已.p存放的是对象的地址. #include<iostream> using namespace std; void main() { ); cout << "调用前,i的地址:" << i << endl; ; i = &a…
c++形参和实参同名时,如何单步执行观察形参的变化? 方法:当程序运行到函数中时,添加变量观察即可.…
今天阅读了一个写的非常棒的博文,通过此博文再次复习了Java中参数传递的知识(即值传递与引用传递的区别).参考网站http://www.cnblogs.com/binyue/p/3862276.html.下面我将通过次博文记录自己的理解,还望能够帮助再学Java或者复习Java的朋友们. 一.基本类型与引用类型在内存中的保存内容 Java中的变量分为基本类型和引用类型两种.基本类型的变量保存数值本身,而引用类型的变量保存的是引用值,即指向内存空间的地址. 基本类型包括:byte,char,int…
有关形参与实参的说明:(1) 在定义函数时指定的形参,在未出现函数调用 时,它们并不占内存中的存储单元,因此称它们是 形式参数或虚拟参数,表示它们并不是实际存在的数据,只有在发生函数调用时,函数max中的形参才被分配内存单元,以便接收从实参传来的数据. 在调用结束后,形参所占的内存单元也被释放 (4) 实参与形参的类型应相同或赋值兼容.如果实参为整型而形参为实型,或者相反,则按不同类型数值的赋值规则进行转换.例如实参a的值为3.5,而形参x为整型,则将3.5转换成整数3,然后 送到形参b.字符型…
1.1 知识点 函数:就是可以重复执行的代码块 2.  组成:参数,功能,返回值 为什么要用函数,因为一部分代码使用次数会很多,所以封装起来, 需要的时候调用 函数不调用,自己不会执行 同名函数会覆盖,后面的覆盖前面的 函数名等于整个函数,打印函数名,就等于打印整个函数的代码 7.  加载函数的时候只加载函数名,不加载函数体 参数相当于局部变量 两个平级的函数中变量不会相互影响 10.     预解析:函数在解释文档的时候会被整体提到文档的最前面,和加载不一样 第一种:解析的时候会被提前,可在任…
一.定义 1.实参(argument):     全称为"实际参数"是在调用时传递给函数的参数. 实参可以是常量.变量.表达式.函数等, 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值, 以   便把这些值传送给形参. 因此应预先用赋值,输入等办法使实参获得确定值.       2.形参(parameter):   全称为"形式参数" 由于它不是实际存在变量,所以又称虚拟变量.是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的…
1:什么是函数 函数其实就是带名字的代码块,用于完成一些具体的工作.如果我们在写一段程序的时候,需要多次用到同样的一个功能,如果每次都要重复写相同的代码,不仅会增加我们的代码量,更会让我们写出的代码让别人看起来觉得很low,而如果我们把功能作为一个代码块封装在一个函数里,每次仅需要调用这个函数,是不是就很方便了?这就是函数的意义所在 1.1 函数的定义方式 函数的定义使用def关键字,如下: def user(): def 关键字后面加函数名定义函数,定义以冒号结尾 """内…
当函数调用函数时候传入的实参比函数声明时候制定的形参要少时候,剩余的形参就设置成了undefined.例如 function getPropertyNames(o,/*optional*/a){ var a = a||[]; for(var property in o){ a.push(property); } return a; } getPropertyNames({x:1,y:2,z:3}); //["x", "y", "z"] getPr…
看了很多的文章,稍微有一些的总结:对最基本的形参与实参有了一定的理解,虽然还是不够深入. 1.基本概念 形参:全称为"形式参数"是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传如的参数. 实参:全称为"实际参数"是在调用时传递个该函数的参数. 2.区别 形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用. 实参出现在主调函数中,进入被调函数后,实参变量也不能使用. 形参和实参的功能是作数据传送.发生函数调用时,主调函数把实参的值…
形参与实参 参数介绍: 函数为什么要有参数:因为内部的函数体需要外部的数据 怎么定义函数的参数:在定义函数阶段,函数名后面()中来定义函数的参数 怎么使用函数的参数:在函数体中用定义的参数名直接使用 实参:有实际意义的参数 -- 在函数调用的时候,()中传入的参数 形参:参数本身没有意义,有实参赋予形参值后,该形参就具备了意义补充:有默认值的形参,在没有被实参赋值,具备的是自身意义,但一旦被实参赋值,意义同实参 - def add(n1, n2=2): -- 在定义函数的时候,()中出现的参数…
一.形参和实参 1.形参:在函数定义()中出现的参数形参就是拷贝实参的值,随着函数的调用才产生,随着函数调用结束而销毁 def fn(a, b, c): print(a) print(b) print(c) print(x) print(y) print(z) x = y = z = # x, y ,z 是外界实际存在的值 2.实参:在函数调用()中出现的参数(外界实际存在的值) 调用函数时,实参可以有常量,变量,表达式或三种组合. 在函数的外部不能直接使用函数的形参,原因:函数调用完毕后,形参…
今天百度startWith函数的用法,无意中看到了形参这个称呼,因此就去了解了下形参与实参. 在传值机制中,其实就是把变量b(实参)的地址传递给了形参(也就是实参跟形参都是用的同一个地址,在传值之前形参是没有地址的,从表面上看就是实参取代了形参),也就是很容易理解,看下面的代码吧. public void test(String a){   // 这里的a为形参 system.out.println(a); } String b = "aaaaa"; test(b); // 这里的a为…
形参是指被调用方法中的参数 实参是指传递给方法的参数 (1)值类型传参是按值传递 值类型传参,形参接受到的是实参的一个副本,即形参发生变化,实参不会发生任何变化 (2)引用类型参数按值传递 当参数传递的是引用类型时,传递和操作是目标的地址,由于地址指向的是实参的参数; 那么形参也是指向的同一个值,对形参进行操作也就是对地址指向的值进行操作,当形参发生改变时实参也会发生改变 (3)string引用类型参数传递按值传递特殊情况 string 具有不可变性,当string类型被赋值则他是不可变的 为s…
函数中形参与实参的关系 对于形参和实参的定义,在 权威指南中有着明确的定义.但是,我们更在意的是它们之间的关系,到底形参会不会影响到实参? 形参到底会不会影响到实参? 对于这个问题的答案,请先看以下两个例子: //例子一 function add(x){ x+=1; }; var a = 1; add(a); console.log(a); //1 看来不会影响到实参 //例子二 function Push(arr){ arr.push(1); } var b = []; Push(b); co…
什么是函数 函数是指将一组语句的集合通过一个名字(函数名)封装起来,想要执行这个函数,只需调用其函数名即可 1.减少重复代码 2.使程序变的可扩展 3.使程序变得易维护 定义函数的语法 形参 主要的作用就是接受实参参数的传递,并且被语法调用  #形参只有在被调用时才内存单元,在调用解释时,即可释放所分配的内存单元.因此,形参只在函数内部有效.函数调用结束返回主调用函数后则不能再使用该形参变量 实参 主要的作用就是讲参数传递给形参    #实参可以是常量.变量.表达式.函数等,无论实参是何种类型的…
c++之函数形参和实参讲解 1.非地址型参数 在c++中实现模块化编程时,我们形成会遇到对自定义的函数模块传入参数的操作,即形参.这里主要讲解一个非地址型的形参. 不多说,先看代码: #include <iostream> using namespace std; void changeNumber(int num){ num ++; } int main(){ ; //猜猜num的值是多少 changeNumber(num); cout << "num = "…
形参是指被调用方法中的参数 实参是指传递给方法的参数 (1)值类型传参是按值传递 值类型传参,形参接受到的是实参的一个副本,即形参发生变化,实参不会发生任何变化 (2)引用类型参数按值传递 当参数传递的是引用类型时,传递和操作是目标的地址,由于地址指向的是实参的参数; 那么形参也是指向的同一个值,对形参进行操作也就是对地址指向的值进行操作,当形参发生改变时实参也会发生改变 (3)string引用类型参数传递按值传递特殊情况 string 具有不可变性,当string类型被赋值则他是不可变的 为s…