精华内容
下载资源
问答
  • 在c语言中形参必须是
    千次阅读
    2020-11-20 15:19:51

    不可以,因为在调用函数时需要对形参分配内存空间以用于接收实参传递的值,所以形参不可以是表达式,也不能在形参处对其赋值,比如 int result(int a=3)是不可以的。
    但是实参可以是表达式。
    (摘自百度知道)

    更多相关内容
  • 主要介绍了C语言中形参和实参详解及实例代码的相关资料,需要的朋友可以参考下
  • C语言形参和实参详解

    千次阅读 2021-05-21 16:06:52
    就是定义函数的时候,写函数名小括号后面的参数叫形参实参:实际参数。就是调用函数的时候,调用函数时写函数名小括号后面的参数就叫实参2).注意项a.实参既可以放常量,也可以放变量,还可以放表达式;形参:它...

    一 形参与实参

    1).定义

    形参:形式参数。

    就是定义函数的时候,写在函数名小括号后面的参数叫形参

    实参:实际参数。

    就是调用函数的时候,调用函数时写在函数名小括号后面的参数就叫实参

    2).注意项

    a.实参既可以放常量,也可以放变量,还可以放表达式;形参:它其实可以理解为就是这个函数的局部变量

    b.实参给形参传值,其实只是相当于给函数的形参(局部变量)赋值

    c.值传递:在函数内改变了形参的值,不会影响到外面的实参

    d.在C语言中,除了数组以外,所有的类型作为实参传递都是值传递

    二 有参函数

    带参数的函数定义语法:

    void  函数名(类型 参数名){

    函数体;

    }

    应用场景:当函数完成某个功能必须要外界传入一些数据的时候,就用参数

    tips:代码例子如下

    #include

    /*

    * 判断一个数是不是水仙花数

    */

    void isFlower(int num){

    int bai = num / 100;

    int shi = num / 10 % 10;

    int ge = num % 10;

    //如果 百*百*百 + 十*十*十 + 个*个*个 等于这个数

    if( bai*bai*bai + shi*shi*shi + ge*ge*ge == num){

    //就是水仙花数

    printf("%d是水仙花数\n",num);

    }else{

    //    否则 不是水仙花数

    printf("%d不是水仙花数\n",num);

    }

    }

    //2、写一个函数,求指定某个数到某个数之间所有的整数的累加和

    //如:3到8,算出3+4+5+6+7+8 = ?

    void getN2MSum(int n,int m){

    int sum = 0;

    if(n < m){ //n比m小的情况

    for (int i=n; i<=m; i++) {

    sum += i;

    }

    }else{ //m比n小的情况

    for (int i=m; i<=n; i++) {

    sum += i;

    }

    }

    printf("%d到%d之间的和为%d\n",n,m,sum);

    }

    // 3、用函数来实现判断一个年份是不是闰年

    void isRunYear(int year){

    if( year % 400 ==0  || (year%4==0 && year %100!=0) ){

    printf("%d年是闰年\n",year);

    }else{

    printf("%d年是平年\n",year);

    }

    }

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

    //调用语法:函数名(实参列表);

    isFlower(200);

    getN2MSum(100,1);//10+11+12....+20

    isRunYear(1900);

    return 0;

    }

    展开全文
  • C语言中实参和形参之间的数据传递是单向的“值传递”,单向传递,只能由实参传给形参,反之不行 输出格式并没有选择%p而是选择了%d,因为十进制的数看起来更直观 1 值传递 如果只是传递值的话: #include //值...
  • c语言数组形参

    2020-06-16 19:57:47
    在c语言中,如果数组作为参数传递,会退化为指针。 void testPara(int nums[]) { int len = sizeof(nums) / sizeof(int); printf("形参数组长度为%d\n", len); } int main() { int nums[] = {1,2,3,4,5}; int ...

    在c语言中,如果数组作为参数传递,会退化为指针。

    void testPara(int nums[])
    {
        int len = sizeof(nums) / sizeof(int);
        printf("形参数组长度为%d\n", len);
    }
    int main()
    {
        int nums[] = {1,2,3,4,5};
        int len = sizeof(nums) / sizeof(int);
        printf("实参数组长度为%d\n", len);
        testPara(nums);
    }

    输出结果为:

    形参数组输出的长度为数组首地址指针的长度,并不是数组实际长度。

    展开全文
  • C语言形参

    2021-08-19 11:24:39
    形参出现函数定义整个函数体内都可以使用,离开该函数则不能使用。实参出现主调函数,进入被调函数后,实参变量也不能使用。 形参和实参的功能是作数据传送。发生函数调用时,主调函数把实参的值传送给...

    形参和实参区别

    形参出现在函数定义中,在整个函数体内都可以使用,离开该函数则不能使用。实参出现在主调函数中,进入被调函数后,实参变量也不能使用。

    形参和实参的功能是作数据传送。发生函数调用时,主调函数把实参的值传送给被调函数的形参从而实现主调函数向被调函数的数据传送。

    1.形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。 函数调用结束返回主调函数后则不能再使用该形参变量。

    2.实参可以是常量、变量、表达式、函数等, 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值, 以便把这些值传送给形参。 因此应预先用赋值,输入等办法使实参获得确定值。

    3.实参和形参在数量上,类型上,顺序上应严格一致, 否则会发生“类型不匹配”的错误。
    4.函数调用中发生的数据传送是单向的。 即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。 因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。

    5.当形参和实参不是指针类型时,在该函数运行时,形参和实参是不同的变量,他们在内存中位于不同的位置,形参将实参的内容复制一份,在该函数运行结束的时候形参被释放,而实参内容不会改变。

    原文:https://blog.csdn.net/weixin_29327977/article/details/116980079

    展开全文
  • C语言中函数形参与实参的区别

    千次阅读 2021-10-02 22:56:10
    众所周知一个函数有两种参数,即形参和实参。那么究竟什么是形参什么是实参呢? 形参定义函数时指定的参数,未出现函数调用时,他们并不占用内存的存储...在c语言中,实参与形参的数据传递是“值传递”,单...
  • 相信大家对于‘&’运算符并不陌生,我们主要将他用于取参数...赋值上会有些差别,指针赋值以 *p=x 或 p=&x 的形式赋值,而形参如果为char &p的话,只能以 p=x 的形式赋值。 第一次写博客,如有不周,请多指教。
  • c语言中形参与实参的关系

    万次阅读 多人点赞 2018-04-11 16:10:48
    一、形参出现函数定义整个函数体内都可以使用,形参变量只有被调用时才分配内存单元,调用结束时即刻释放所分配的内存单元,因此,形参只有函数内部有效。 函数调用结束返回主调函数后则不能再使用该...
  • C语言形参传递

    2022-03-27 10:46:18
    C语言中形参传递 值传递 #include <stdlib.h> #include <stdio.h> void Exchg1(int x, int y) /* 定义的x,y变量被称为Exchg1函数的形式参数 */ { printf("x地址 = %p, y地址 = %p.\n", &x, &...
  • C语言指针形参与实参

    2020-04-06 16:19:51
    在形参导致其实参改变即为其传递时进行的是双向的值传递,就是说函数进行两个变量之间的交换的时候是值交换,而不是指针指向的地址交换。例如: int main() { int i=8,j=9; int *p,*q; p=i;//将i的地址赋给...
  • C语言形参跟实参详解

    万次阅读 多人点赞 2019-01-29 15:27:56
    今天我们来说下c语言形参与实参的区别,形参跟实参理解的话也很简单,但是好多同学关于这个知识点都是一知半解,没有真正的去透彻,真正引用的时候还会出现很多问题,而百度的时候又会说看不懂,所以我们今天来做...
  • 在C语言中,形参的缺省存储类别是().

    千次阅读 2021-05-19 17:18:25
    在C语言中,形参的缺省存储类别是().形组成细胞核的主要化学成分是()参的存储气体一等径管中等温稳定流动,现进出口压力不同,气体进出口处的密度发生变化,从而进出口处气体的质量流速也不同。缺省流体阻力的大小与...
  • C语言形参和实参的区别(非常详细)

    万次阅读 多人点赞 2019-11-03 17:45:23
    如果把函数比喻成一台机器,那么参数就是原材料,返回值就是最终产品;从一定程度上讲,函数的作用就是根据不同的...函数定义出现的参数可以看做是一个占位符,它没有数据,只能等到函数被调用时接收传递进来...
  • C语言中的实参和形参

    千次阅读 2018-11-24 21:57:46
    个人理解,如有错误还请指正 实参:传递给被调用函数的值;...2.实参可以是常量、变量、表达式、函数等, 无论实参是何种类型的量,进行函数调用时,它们都必须具有确定的值, 以便把这些值传送给形参。...
  • c语言形参是否占存储单元

    千次阅读 2020-12-24 22:28:59
    展开全部C。...形参变量只有被调用时才分配内存单元,调用结束时,即刻释放所分配的内存单元。因此,形参只有函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。实参和其...
  • C语言函数-形参和实参

    万次阅读 多人点赞 2019-04-29 09:34:34
    1.形参和实参的概念 形参(也叫形式参数) 定义函数名和函数体的时候使用的参数,他没有数据,可以看做一个占位符,只能等到函数被调用时接收传递进来的...形参变量函数未被调用时是不占内存空间的,只有函数被...
  • 这个过程,我们大多会给这个函数传递某些‘参数’,当我们定义被调用函数时,函数名后的括号( )即为我们传入的“形参”,函数可以函数体描述如何操作这些“形参”;同时,我们调用函数时,例如 fun(param1...
  • c语言中数组作为形参

    万次阅读 多人点赞 2019-09-12 10:31:43
    数组可以做为函数形参传入进行处理,此时的数组变量退化为数组首元素的地址。其他读写操作可以类推,但是长度不能导入。 int test(int array [],int len) { int sum = 0; for (int i = 0; i < len; i++) ...
  • C语言函数里最常用就是指针传参和返回地址,特别是字符串处理;这篇文章就介绍如何使用指针作为函数参数、并且使用指针作为函数返回值。
  • C语言形参是指针的问题梳理

    千次阅读 2018-12-19 21:08:13
    C语言形参是指针的问题梳理 起因:我学习链表的时候将*head(头指针)作为一个创建新结点函数的形参,函数改变了head的指向,传入的实参是head(定义为一个结构指针),但不能改变主函数head的指向。 我很...
  • 如题,C语言在函数间传递参数时,形参的变化是不会改变实参的值的!!!如:includevoid main(){void swap(int,int);int a,b;scanf("%d,%d",&a,&b);swap(a,b);}void swap(int a,int b){int temp;temp = a;a ...
  • C语言形参与实参

    2021-02-04 18:14:04
    形参与实参 1.形参和实参是什么 2.形参和实参的区别 3.形参与实参知识点 3.1实参的值不随形参的变化而...今天我们来说下c语言形参与实参的区别,形参跟实参理解的话也很简单,但是好多同学关于这个知识点都是一知.
  • C语言形参和实参

    2021-10-13 16:24:11
    函数定义出现的参数可以看做是一个占位符,它没有数据,只能等到函数被调用时接收传递进来的数据,所以称为形式参数,简称形参。 关键词:占位符,没有数据 实参的解释 函数被调用时给出的参数包含了实实...
  • 作者目前就读于,双非本科,大一,很多地方理解不当还望各位大佬耐心教导。万分感谢! 现在也是大年初六,这给大家们拜一个...3.无论实参是何种类型的量,进行函数调用时,它们都必须有确定的值, 以便...
  • 【单选题】在C语言中以下不正确的说法是A. 实参可以是常量、变量、或表达式 B. 形参可以是常量、变量或表达式 C. 实参可以为任意类型 D. 形参应与其对应的实参类型一致更多相关问题()是调整商事关系的法律规范。18....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 72,230
精华内容 28,892
热门标签
关键字:

在c语言中形参必须是