注册 登录
编程论坛 C++教室

求助参数问题

wandou08 发布于 2008-10-05 00:19, 614 次点击
调用函数的参数中可以是变量,常量,表达式,但是在传递时是先把表达式算出来,然后传递,我想问的是,实参表达式中是一个含有未知数的表达式,那么这个时候能不能传递这个表达式啊?
如:
int a;
int b,c;
a=4;
c=b+2a+b*b;
hang(2,a,c)
请问c的表达式能这样传递给形参吗?谢谢!请指教!
8 回复
#2
xxping2008-10-05 00:33
能传,但会产生意想不到的错误,因为b的值无法确定,进而c也无法确定
#3
blueboy820062008-10-05 09:15
可以这样写:
hang(2,a,b+2a+b*b);
#4
wandou082008-10-05 09:35
非常感谢!
hang(2,a,b+2a+b*b);这样写的话就可以把这个含有未知数b的表达式传过去吗?如:
函数 int hang(int e,int d,double x)
       {double y;
        y=x+x*x+3+e+d;
        ..........
        }
这时候形参是否是这样的y=b+2a+b*b+pow(b+2a+b*b,2)+3 +e+d? 对吗?
#5
wandou082008-10-05 10:28
其实我实际当中遇到的c值不是很简单的b+2a+b*b,所以不可能再调用函数中把整个表达式都写出来,只能用c代替,那我该怎么办啊 ?
求高手帮帮忙啊!非常感谢!
#6
blueboy820062008-10-05 11:54
具体情况具体分析...
我又不知道你究竟是要什么样的...

仔细想想,总能解决...

最多,就多传几个参数呗...传入函数后再计算...
#7
ml2325282008-10-05 12:55
c=b+2a+b*b;
请问2a是什么意思
#8
wandou082008-10-05 13:09
谢谢!但不仅仅是调用一个函数,因为在被调函数中又嵌套多个函数,所以不知道该怎么办?
#9
wandou082008-10-05 13:10
输入有错误,就是2*a
1