c语言函数调用时值的传递 c语言程序中当调用函数时实参的值传递给形参

c语言中的值传递是怎么回事?

实参的值传给了形参,形参可以看着是被调函数中的局部变量被调函数可有返回值也可以没有有返回值用return返回。例如int fun(int a,int b){ int c; c=a+b; return c;}主函数调用:int a,b,c;a=1,b=2;c=fun(a,b);没有返回值的函数通常形参都是指针变量,那样可以直接改变变量的值,例如fun(int *a){ *a=5;}主函数调用int b=1;fun(b);这里调用fun后,b的值就变为5了而如果你的函数是fun(int a)这样b的值是不会变化的,这要你去理解指针

创新互联是专业的滨湖网站建设公司,滨湖接单;提供做网站、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行滨湖网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

在调用函数时,函数是怎样传值的

函数的传值方式很多,不知道你说的哪一种。、

一般的有两种:直接传值和间接传值

1、直接传值就是传到函数里面只是一个值,函数中用这个值的时候与函数外互不影响,这种传值一般是基本数据类型。例如:

定义的时候void function(int a){a++;}

调用的时候int a=1;function(a);printf("%d",a);这里输出是1;

2、间接传值传递的是变量的地址,在函数中的变量的改变会影响到外面的输出。例如:

定义的时候void function(int a){a++;}

调用的时候int a=1;function(a);printf("%d",a);这里输出是2;

这里要注意的是如果参数是指针、数组。那么传进来的也是一个地址。会影响到函数外面的。

c语言函数调用时,参数是如何传递的

建立中间变量(形参),把实参值赋值给中间变量,当被调函数返回值时,系统释放掉中间变量。

在程序中通过对函数的调用来执行函数体,其过程与其它语言的子程序调用相似。对无参函数调用时则无实际参数表。实际参数表中的参数可以是常数、变量或其它构造类型数据及表达式。各实参之间用逗号分隔。

函数作为表达式中的一项出现在表达式中,以函数返回值参与表达式的运算。这种方式要求函数是有返回值的。例如:z=max(x,y)是一个赋值表达式,把max的返回值赋予变量z。

扩展资料:

C语言中又规定在以下几种情况时可以省去主调函数中对被调函数的函数说明。

1、如果被调函数的返回值是整型或字符型时,可以不对被调函数作说明,而直接调用。这时系统将自动对被调函数返回值按整型处理。例8.2的主函数中未对函数s作说明而直接调用即属此种情形。

2、当被调函数的函数定义出现在主调函数之前时,在主调函数中也可以不对被调函数再作说明而直接调用。例如例8.1中,函数max的定义放在main 函数之前,因此可在main函数中省去对max函数的函数说明int max(int a,int b)。

3、如在所有函数定义之前,在函数外预先说明了各个函数的类型,则在以后的各主调函数中,可不再对被调函数作说明。

参考资料来源:百度百科-函数调用

c语言函数的值传递

p函数就是个冒泡递减排序功能。标准函数头写法应该是void p(int a[])而不是void p(int a[5]),即使写成void p(int a[5]),编译器也是按void p(int a[])解释而不按void p(int a[5])解释,而且这里a[]的意思就是定义a是int *型指针。函数p中并没有改变a,改变的是a指向的目标a[0]~a[4]。所以不知你问的具体是啥意思……

C语言函数调用参数传递的是什么?

C语言传递的是值而不是地址,这一点从VB转过来的程序员一定要注意。否则不经意间就会犯错误。另外下层函数修改上层函数变量不是一种好习惯,容易引发错误。C语言中函数可以返回一个函数值,如果你需要返回多个函数值可以用下面的形式

fun(int *a, int *b)

{ *a=1;*b=2;}

main()

{ int a, b;

fun(a,b) a,b的值被改变

}

如果按VB的习惯,

fun(int a, int b)

{ a=1;b=2;}

main()

{ int a, b;

fun(a,b);a、b的值没有改变

}

是错误的,main中的a,b和fun中的a,b完全是两码事,结果就是调运fun没有任何效果。

C语言函数调用参数传递的是什么

分两种,一种是按值传递,一种是按地址传递,

按值传递就是在子函数中开辟出一个临时内存空间,将传递的数值保存在这个空间中,当子函数结束后,这个内存空间就会释放了!

按地址传递则是把主函数开辟的某个内存空间首地址传递给子函数,子函数可以直接读写主函数上这段内存空间,当子函数结束后,这部分空间不会被释放,主函数将继续使用这段空间!


分享标题:c语言函数调用时值的传递 c语言程序中当调用函数时实参的值传递给形参
文章源于:http://myzitong.com/article/doccsoj.html