精华内容
下载资源
问答
  • 形参的作用
    2016-09-22 14:53:47

    java中形参作用域:
    一、内存区域类型
    1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制;
    1. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(对象可能在常量池里)(字符串常量对象存放在常量池中。);
    2. 堆:存放所有new出来的对象;
    3. 静态域:存放静态成员(static定义的);
    4. 常量池:存放字符串常量和基本类型常量(public static final)。有时,在嵌入式系统中,常量本身会和其他部分分割离开(由于版权等其他原因),所以在这种情况下,可以选择将其放在ROM中 ;
    5. 非RAM存储:硬盘等永久存储空间

    1): (堆),执行作用域在执行完method方法后,形参不是立即释放内容空间 (类似:全部变量)

        1. method(Map<String,BigDecimal> sMap);
        2. method(Object object);

    2): (栈)基本类型,以及一些封装类(BigDecimal,Integer)或者String
    执行完method方法,形参即释放内存空间 (类似:局部变量)

        1. method(String str);
    更多相关内容
  • 1.形参是一种局部变量,作用域仅限于该函数 2.形参是一种局部变量,它有自己的空间(当函数被调用时,局部变量的空间被临时申请,同时这个空间的数据被赋值成实际参数的值)。当离开定义它的函数时,分配给他们的...

    1.形参是一种局部变量,作用域仅限于该函数
    2.形参是一种局部变量,它有自己的空间(当函数被调用时,局部变量的空间被临时申请,同时这个空间的数据被赋值成实际参数的值)。当离开定义它的函数时,分配给他们的存储空间就被释放掉了。

    #include<stdio.h>
    void fun(int cmd);
    
    main()
    {
    	int a = 3;//为a开辟空间,这个内存里存放数字3
    	printf("变量a = %d\n",a);
    	fun(a);//a为实际参数,发生函数调用,开辟一个临时空间,存放的是局部变量数字3.(函数调用时,是把实际参数的值拷贝1份给实际参数)。函数执行结束后,该空间由内存管理单元自动收回
    	printf("函数调用结束后,局部变量的空间被释放了 a=%d\n",a);
    }
    
    //形参是一种局部变量,作用域仅限于该函数
    //形参有自己的空间(临时的),当这个函数被调用时,会临时申请一个空间,同时,这个空间内的数据被赋值为实际参数的值。函数调用结束时,该空间被释放
    void fun(int cmd)//cmd为形参
    {
    	printf("cmd = %d\n",cmd);
    	cmd++;
    	printf("cmd自增 = %d\n",cmd);
    }
    

    在这里插入图片描述

    展开全文
  • main函数的形参往往在linux系统中使用的最多,下面介绍一种在网络编程中的使用方法,可以自己设置连接的服务器地址,端口,以及波特率的设置。

    main函数的形参往往在linux系统中使用的最多,下面介绍一种在网络编程中的使用方法,可以自己设置连接的服务器地址,端口,以及波特率的设置。

    常用的两种格式

    int main(int argc, char** argv)

    int main(int argc, char* argv[])

    • argc是指命令行输入参数的个数
    • argv存储了所有的命令行参数

    常用形式

    //其中argc表示参数的个数,argv为一个数组,里面通过字符串的方式保存了各项参数
    int main(int argc, char **argv)  
    
    {
        // 判断传入的参数是否为4个
        if(argc != 4)
        {
                printf("./main tcp_port usar_port bps \n");
                exit(1);
        }
    
        //注意这里的参数为字符串类型,需要转换成整型
        int SERVER_PORT= atoi(argv[1]);
        int USART_PORT= argv[2];
        int USART_BPS= atoi(argv[3]);
    
    }
    

    上述代码表达的意思为如果命令行输入的参数值不为4,则请重新输入

    在Linux中的使用方式如下:

    在终端输入 ./main 127.0.0.1 80 512000

    上面一个有4个字符串,也就是argc的值,而argv则存储了上述4个字符串

    展开全文
  • 在c、c++的学习之中,我们会遇见在函数传参过程中const对于函数参数的形容,那么这样的形容对于函数形参作用就值得我们进行讨论一下。

    在c、c++的学习之中,我们会遇见在函数传参过程中const对于函数参数的形容,那么这样的形容对于函数形参的作用就值得我们进行讨论一下。

    目录

    1.导入

    2.作用:保护传值

    1.导入

    在进行函数形参中cosnt的形容之前,我们有必要讨论一下const形容下的顶层const底层cosnt

    其中,顶层const:表示任意一个对象为常量;底层cosnt:与指针、数组或者引用等的复合类型有关,即该指针指向或该引用绑定的对象是常量。

    例如:

    const int a = 100;//顶层cosnt,形容整形变量a为常量
    const int *p1 = &a;//底层const,形容整形指针p1指向的对象a为常量
    int b = 101;
    int *const p2 = &b;//顶层const,形容指针p2本身的值为常量
    

    在上述代码中,根据cosnt对目标内容的限制,我们很轻易能结论:a的值、p1指向的值、p2本身的值是不能做修改的。但是我们可以修改p1本身的值,也可以修改p2指向的值。

    所以从cosnt定义的内容角度出发,我们需要着重考虑const对形容变量的不可修改性。也就是说,cosnt形容谁,谁旧具有不可修改性,它的值自然也就不能发生改变。

    就像:

    const int c = 10;
    const int *p3 = &c;
    int *p4 = p3;//报错!!!

    上述代码中,关于p4的定义就会发生报错,因为对于p3而言,const是作为一种底层const出现的,即p3指向的值不能发生改变。

    而p4的定义中,并没有涵盖这一部分内容,也就是说按照p4的定义,意味着我们可以对p3指向的内容进行修改。这样的定义说法很明显是错误的,因为它忽视了p3指向值的不可修改性,导致保密性下降,编译器就会报错。

    2.作用:保护传值

    在了解到顶层cosnt和底层const之后,我们就可以来看在函数形参中cosnt所扮演的角色了。

    在c和c++中,我们见过如下的定义函数形参的方式:

    void strcpy(char *strDestination, cosnt char *strScoure)
    {
    
    }

    从底层cosnt的角度出发,我们能很明显看出上述代码中关于strScoure指向值的不可修改性。也就是说在接下来的函数内容中,不能出现这样的操作内容:

    *strScoure = "Ni Hao";
    

    因为这样会对strScoure指向的值发生改变,显然违背了cosnt对它的形容目的。

    或者像这样:

    char *p = strScoure

    因为这样子对p进行定义会存在通过p对strScoure指向值修改的情况,所以这样对p进行定义也是非法的。

    那么关于形参中cosnt形容具体作用应该是:

    保护传值

    因为为了提高参数传递的效率,所以采用了引用参数的方式,而在引用的过程中,我们不希望传递到函数中的参数发生改变,即不影响我们的传值的内容发生改变。也就是说在函数执行过程中,只能对传值进行读取,而不能进行修改。

    展开全文
  • JS- 函数-形参实参-作用域 1 回顾 数组 1. 什么是数组 值的有序集合 数组中的每个成员称之为元素 元素具有位置,称之为索引 索引从 0 开始,必须是连续的 2. 声明数组三种方式 ① 数组直接量 [] ② Array() ...
  • 从一定程度上讲,函数的作用就是根据不同的参数产生不同的返回值。这一节我们先来讲解C语言函数的参数,下一节再讲解C语言函数的返回值。C语言函数的参数会出现在两个地方,分别是函数定义处和函数调用处,这两个...
  • 今天在回顾学习java基础部分内容面向对象编程的时候整理了一些自己容易混淆的知识点(形参,实参,成员变量,局部变量,构造方法) public class temp{ int v;//此处 v和a成员变量可以被修饰符修饰如(public ,...
  • 函数形参和实参

    2021-05-13 19:40:56
    C语言函数的参数会出现在两个地方,分别是函数定义处和函数调用处,这两个地方的参数是有区别的。...形参和实参的区别和联系形参变量只有在函数被调用时才会分配内存,调用结束后,立刻释放内存,所以形参变量
  • 函数形参作用域为整个函数体

    千次阅读 2013-11-21 11:28:08
    #include using namespace std; int func(int i){  int i; // 形参“i”的重定义  i=1;  return i; } int main(){  int a=func(2);  printf("%d",a); }
  • Java 使用接口作为形参 一些理解

    千次阅读 2021-07-13 16:23:37
    按照以前的经验,形参一般都是基础变量,或者class之类的,都比较常规。 最近工作中,见了一种以前没见过的写法,记录下我的思考 java的接口只有一堆定义好形参和返回值的方法名。我们常用接口去定义一种行为模式,...
  • 在js函数中,形参作用是用来接收实参传来的数据,(形参可以接收任何数据类型的数据,数组,字符串…函数等等) 举例: function sum(num1, num2) { let a = num1 + num2; return a; } console.log(sum(1, 2)); 其中...
  • } } int fun(int a,int b) { .........} main函数一般不包括形参,它是主调函数谁来调用它呢 但你可以参考下面的事实 每一个C程序的执行都是在系统的支持下进行的,main函数是系统执行相就的程序得到“调用”,从...
  • 1、形参和实参 1.1 形参的含义及使用 1.2 实参的含义及使用 2、局部变量和全局变量 2.1 变量作用域的概念 2.2 局部变量 2.3 全局变量 2.4 修改全局变量值
  • 第7章 PHP函數和變數的作用域 7.1 自訂函數 函數 函數是指可以按照黑盒子的方式思考我們周圍的許多要解決的問題函數可讓使用者自由改變某些參數而且都能產生合理回應的黑盒子 自訂函數 自訂函數則是指程式設計師自行...
  • 无论实参是何种类型的量,在进行函数调用时,它们必须有确定的值,以便把这些值传送给形参。 扩展常识: 数组元素可以用作函数实参,不能用作形参。因为形参是在函数被调用时临时分配存储单元的,不可能为一个数组...
  • 以前都知道main函数有系统调用,大多时候我们写的main函数也是没有形参的,如果有形参那么我们又将如何赋给这些形参值呢? 先看带形参的main函数是怎么写的: int main(int argc,char** argv) int main(int ...
  • c++ 中函数形参没有变量名

    千次阅读 多人点赞 2019-11-03 16:14:00
    这一看,不知道是什么意思,为什么形参没有参数名? 正常的情况应该是这样的 int add(int a,int b); 这是由于没有形参名的函数只用来声明,然而到定义的时候,必须有形参名称。类似这样: int add(int, int); int ...
  • C++ 关于函数形参中const的作用

    千次阅读 2022-01-23 23:25:45
    我们先一个个来,讲一下引用的作用 引用,其实就是给绑定的对象起了个别名,之后对这个别名的所有操作都可以看出对绑定对象的直接操作,那么当引用作为形参,函数调用时也可以看成将传递的实参绑定给它,这样我们在...
  • 添加链接描述 C++中函数形参使用const会使程序更加灵活。
  • 指针在实参与形参间传递的作用

    千次阅读 2020-09-13 13:51:34
    实参与形参的区别 使用 形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用。 实参出现在主调函数中,进入被调函数后,实参变量也不能使用,无法修改。 调用 形参变量只有在被调用时才...
  • C++中函数作为形参传递

    千次阅读 2015-11-05 23:34:15
    规定:没有括号的函数名被认为是一个指向该函数的函数指针 如:void add(), 这里的add就是指向该函数的指针 语法:函数返回值的类型 + 作为指针的函数名 + 该函数的参数 如:void (*visit) (int a, int b) ...
  • 4.2.4 实参为指针,形参为数组名 4.2.5 实参为指针,形参为指针 对于(1),(5)这两种情况比较好理解,实参为指针,其值为地址,所以形参接收的也是地址,实参与形参类型匹配,可以进行数据传递,在此不一一介绍。...
  • C++:默认形参值的作用

    千次阅读 2019-09-28 10:20:28
    函数在声明的时候可以预先给出默认形参值。调用时如果给出实参,那么就采用实参值,否则就使用给出的默认形参值。 【代码】 #include <iostream> using namespace std; int add(int a=3,int b=4){ return a+b...
  • 实参和形参的区别: 参数有形参(parameter)和实参(argument)的区别,形参相当于函数中定义的变量,实参是在运行时的函数调用时传入的参数。 形参就是函数声明时的变量,实参是我们调用该函数时传入的具体参数。...
  • 方法及形参等的定义

    2021-12-28 14:08:57
    权限修饰符 状态修饰符(可选) 返回值类型 方法名(形参){ 方法体 } ; 2.方法名: 有多个单词 第一个单词小写 第二个单词开始首字母大写; 3.i方法定义在类中 ii方法与方法是平级关系,不能嵌套定义; 4....
  • python中的参数:形参实参 形参: 形式上的参数,可以理解为数学中的x,没有实际的值,通过别人赋值后才有意义。相当于变量 实参: 实际意义上的参数,是一个世纪存在的参数,可以是字符串或者数字等。 就是在函数...
  • const形参和实参

    2021-05-22 01:39:30
    形参是const时,必须要注意关于顶层const的讨论。如前所述,顶层const的作用于对象本身:const int ci=42; //不能改变ci,const是顶层的int i=ci; //正确:当拷贝ci时,忽略了它的顶层constint *const p=&i; ...
  • 形参与实参

    2021-01-21 12:25:36
    1、形参与实参形参也是一个变量,被调用时生成存储空间,调用结束后释放存储空间;形参与实参之间的存储空间不同int main(int argc, const char * argv[]) {//主函数可以有形参,也可以没有形参@autoreleasepool {...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 171,667
精华内容 68,666
关键字:

形参的作用